C#在不重写文本文件的情况下将文本添加到文本文件中
本文关键字:文本 文件 添加 情况下 重写 | 更新日期: 2023-09-27 18:26:34
假设我有以下代码:
StreamWriter sw = new StreamWriter(File.OpenWrite(Path));
sw.Write("Some stuff here");
sw.Dispose();
这段代码将文件的内容替换为"Some stuff here",但是我希望将文本添加到文件中,而不是替换文本。我该怎么做?
您可以使用File.AppendAllText方法,并将您拥有的3行代码替换为:
File.AppendAllText(Path, "blah");
这样,您就不必担心流和处理它们(即使是在发生异常的情况下,顺便说一句,您做得不好),而且代码非常简单明了。
您需要告诉要附加的StreamWriter
:
var sw = new StreamWriter(path, true);
File.OpenWrite
不支持追加。
检查System.IO.File.AppendAllText
http://msdn.microsoft.com/en-us/library/ms143356.aspx
你可以做你想做的事,比如
File.AppendAllText(path, text);
有一个StreamWriter构造函数,它将bool作为第二个参数,指示编写器在为true时进行追加。
使用append
参数:
StreamWriter sw = new StreamWriter(Path, true);
http://msdn.microsoft.com/en-us/library/36b035cb.aspx
要将文本附加到文件中,可以使用FileMode.Append
打开它。
StreamWriter sw = new StreamWriter(File.Open(Path, System.IO.FileMode.Append));
这只是一种方法。不过,如果您不明确需要StreamWriter
对象,我建议使用其他人建议的File.AppendAllText
。