StreamWriter 不会写入日志文件 [英] StreamWriter won't write to log file
本文介绍了StreamWriter 不会写入日志文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如果output.txt"尚不存在,此代码将在 C:\temp 中创建output.txt".但是, log.WriteLine();
对我不起作用.当我打开文件时,我看不到它.这是为什么?
This code will create "output.txt" in C:\temp if it doesn't already exist. However, log.WriteLine();
doesn't work for me. When I open the file, I don't see it. Why is this?
private static string LogFile = @"C:\Temp\output.txt";
private StreamWriter log;
if (!File.Exists(@"" + LogFile))
{
log = new StreamWriter(@"" + LogFile);
}
else {
log = File.AppendText(@"" + LogFile);
}
log.WriteLine("["+DateTime.Now + "]: ");
推荐答案
您需要关闭 StreamWriter
.最好为此使用 using
块,因为它保证 StreamWriter
将被关闭,即使抛出异常.
You need to close the StreamWriter
. It's best to use a using
block for this, as it guarantees that the StreamWriter
will be closed, even if an exception is thrown.
using (var log = GetLog()){
log.WriteLine("["+DateTime.Now + "]: ");
}
...
public StreamWriter GetLog(){
if (!File.Exists(@"" + LogFile))
{
return new StreamWriter(@"" + LogFile);
}
else {
return File.AppendText(@"" + LogFile);
}
}
这篇关于StreamWriter 不会写入日志文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文