我需要通过添加内容来写一个非常大的文本文件,因为我在c#3.5中对一组非常大的记录进行了交互。此文件的大小可能是几GB。我以为我会在处理完每条记录后使用File.AppendAllText写入文件。这样我就不会将文件保存在内存中。但是,AppendAllText会在调用时将文件的全部内容读入内存,还是只将新内容添加到内存中?
答案 0 :(得分:1)
Apppending并不意味着它会加载现有内容,所以是的,您可以使用AppendAllText。但是请注意,也可以使用StreamWriter(可能更干净)逐渐写入文件(另外不必保持打开/关闭文件。
答案 1 :(得分:0)
从File.AppendAllText的文档看起来它不会将文件读入内存。
Opens a file, appends the specified string to the file, and then closes the file. If the file does not exist, this method creates a file, writes the specified string to the file, then closes the file.