C#将文本添加到文本文件而不重写它?

Ozt*_*aco 3 c# file filestream streamwriter

假设我有以下代码:

StreamWriter sw = new StreamWriter(File.OpenWrite(Path));
sw.Write("Some stuff here");
sw.Dispose();
Run Code Online (Sandbox Code Playgroud)

此代码用"Some stuff here"替换文件的内容,但是我想在文件中添加文本而不是替换文本.我该怎么做?

Dar*_*rov 7

您可以使用File.AppendAllText方法并将您拥有的 3 行代码替换为:

File.AppendAllText(Path, "blah");
Run Code Online (Sandbox Code Playgroud)

这样你就不必担心流和处理它们(即使在发生异常的情况下你做得不正确)并且代码非常简单明了。


zmb*_*mbq 5

你需要告诉StreamWriter你想要追加:

var sw = new StreamWriter(path, true);
Run Code Online (Sandbox Code Playgroud)

File.OpenWrite 不支持追加.