问题描述
|
我有读取文件的代码,然后将其转换为字符串,然后将字符串写入新文件,尽管有人可以演示如何将此字符串附加到目标文件(而不是覆盖它)
private static void Ignore()
{
System.IO.StreamReader myFile =
new System.IO.StreamReader(\"c:\\\\test.txt\");
string myString = myFile.ReadToEnd();
myFile.Close();
Console.WriteLine(myString);
// Write the string to a file.
System.IO.StreamWriter file = new System.IO.StreamWriter(\"c:\\\\test2.txt\");
file.WriteLine(myString);
file.Close();
}
解决方法
如果文件很小,则可以在两行代码中进行读写。
var myString = File.ReadAllText(\"c:\\\\test.txt\");
File.AppendAllText(\"c:\\\\test2.txt\",myString);
如果文件很大,则可以逐行读取和写入:
using (var source = new StreamReader(\"c:\\\\test.txt\"))
using (var destination = File.AppendText(\"c:\\\\test2.txt\"))
{
var line = source.ReadLine();
destination.WriteLine(line);
}
, using(StreamWriter file = File.AppendText(@\"c:\\test2.txt\"))
{
file.WriteLine(myString);
}
, 使用File.AppendAllText
File.AppendAllText(\"c:\\\\test2.txt\",myString)
同样要读取它,您可以使用File.ReadAllText来读取它。否则,一旦处理完文件,就使用using
语句处理流。
, 尝试
StreamWriter writer = File.AppendText(\"C:\\\\test.txt\");
writer.WriteLine(mystring);