Notepad .LOG 只在手动打开时保存日志时间
Notepad .LOG only saves log time when opened manually
我有一个以 .LOG 开头的文本文件,每次我手动编辑文件并保存时,都会记录编辑时间。
我尝试使用 StreamWriter 复制相同的概念,但是不再记录编辑时间。仅当我手动更新文件时才会记录时间。这可能是什么原因?
我的代码:
StreamReader reader = new StreamReader("log.txt");
string myText = reader.ReadToEnd();
reader.Close();
StreamWriter writer = new StreamWriter("log.txt");
writer.WriteLine(myText+ Environment.NewLine+"Automated Test");
writer.Flush();
write.Close();
截图:
这是记事本本身的功能。这不是从其他任何东西写入文件时自动发生的事情。
您需要自己附加时间戳。我建议使用 File.AppendAllLines
而不是读取整个文件然后重写它。例如:
string[] lines =
{
// Short date/time pattern in system culture, using system time zone
DateTime.Now.ToString("g"),
"First new line",
"Second new line"
};
File.AppendAllLines("log.txt", lines);
我有一个以 .LOG 开头的文本文件,每次我手动编辑文件并保存时,都会记录编辑时间。
我尝试使用 StreamWriter 复制相同的概念,但是不再记录编辑时间。仅当我手动更新文件时才会记录时间。这可能是什么原因?
我的代码:
StreamReader reader = new StreamReader("log.txt");
string myText = reader.ReadToEnd();
reader.Close();
StreamWriter writer = new StreamWriter("log.txt");
writer.WriteLine(myText+ Environment.NewLine+"Automated Test");
writer.Flush();
write.Close();
截图:
这是记事本本身的功能。这不是从其他任何东西写入文件时自动发生的事情。
您需要自己附加时间戳。我建议使用 File.AppendAllLines
而不是读取整个文件然后重写它。例如:
string[] lines =
{
// Short date/time pattern in system culture, using system time zone
DateTime.Now.ToString("g"),
"First new line",
"Second new line"
};
File.AppendAllLines("log.txt", lines);