我正在尝试使用文本编写器将文本写入 .NET Core 中的文件。以下代码不会向文件输出任何内容:
TextWriter writer = File.CreateText(@"...txt");
writer.Write("Hello World");
但是,这样做:
TextWriter writer = File.CreateText(@"...txt");
writer.Write("Hello World");
writer.Dispose();
这是为什么?那条额外的行告诉程序做不同的事情是什么?我不想关闭 TextWriter 因为它将写入日志,这些日志在我的应用程序运行时不断且无限期地运行。
在应用程序停止运行之前,我怎样才能让它保持打开状态?
更新
所以我想这样做的原因是我正在使用一个将其日志写入 TextWriter 的 SDK:
TextWriterLogger(textWriter);
//Creates a logger that writes to a TextWriter. User is responsible for providing an instance of TextWriter that is thread safe.
但是,如果我只是将它包含在 using 语句中,则不会写入日志,因为当它们准备好写入时, using 语句将已执行并且 TextWriter 已被释放。
谢谢