如何用c#编写日志文件?
目前,我有一个计时器,这个语句每20秒滴答一次:
File.WriteAllText(filePath+"log.txt", log);对于我想要记录的所有内容,我都会这样做:
log += "stringToBeLogged";因为您可以假设字符串日志只是随着程序的运行而增长。(我甚至不知道每个字符串是否有最大字符?)
我认为必须有更好的办法来做到这一点。我只是认为,每次在日志中添加一些内容,一遍又一遍地写入整个文件将是很麻烦的。
发布于 2016-08-08 05:56:42
使用静态类将日志添加到文件
public static class LogWriter
{
private static string m_exePath = string.Empty;
public static void LogWrite(string logMessage)
{
m_exePath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
if (!File.Exists(m_exePath + "\\" + "log.txt"))
File.Create(m_exePath + "\\" + "log.txt");
try
{
using (StreamWriter w = File.AppendText(m_exePath + "\\" + "log.txt"))
AppendLog(logMessage, w);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
private static void AppendLog(string logMessage, TextWriter txtWriter)
{
try
{
txtWriter.Write("\r\nLog Entry : ");
txtWriter.WriteLine("{0} {1}", DateTime.Now.ToLongTimeString(),DateTime.Now.ToLongDateString());
txtWriter.WriteLine(" :");
txtWriter.WriteLine(" :{0}", logMessage);
txtWriter.WriteLine("-------------------------------");
}
catch (Exception ex)
{
}
}
}https://stackoverflow.com/questions/20185015
复制相似问题