打开现有文件,附加一行

Bla*_*man 248 c# file

我想打开一个文本文件,向它添加一行,然后关闭它.

Fre*_*örk 334

你可以用File.AppendAllText它:

File.AppendAllText(@"c:\path\file.txt", "text content" + Environment.NewLine);
Run Code Online (Sandbox Code Playgroud)


Gab*_*abe 115

using (StreamWriter w = File.AppendText("myFile.txt"))
{
  w.WriteLine("hello");
}
Run Code Online (Sandbox Code Playgroud)

  • 这是写入文件的正确方法,因为您正在生成很多行,以避免出现内存问题。 (2认同)

Ser*_*ral 77

选择一个!但第一个很简单.最后一个可能是文件操作的util:

//Method 1 (I like this)
File.AppendAllLines(
    "FileAppendAllLines.txt", 
    new string[] { "line1", "line2", "line3" });

//Method 2
File.AppendAllText(
    "FileAppendAllText.txt",
    "line1" + Environment.NewLine +
    "line2" + Environment.NewLine +
    "line3" + Environment.NewLine);

//Method 3
using (StreamWriter stream = File.AppendText("FileAppendText.txt"))
{
    stream.WriteLine("line1");
    stream.WriteLine("line2");
    stream.WriteLine("line3");
}

//Method 4
using (StreamWriter stream = new StreamWriter("StreamWriter.txt", true))
{
    stream.WriteLine("line1");
    stream.WriteLine("line2");
    stream.WriteLine("line3");
}

//Method 5
using (StreamWriter stream = new FileInfo("FileInfo.txt").AppendText())
{
    stream.WriteLine("line1");
    stream.WriteLine("line2");
    stream.WriteLine("line3");
}
Run Code Online (Sandbox Code Playgroud)


Rob*_*ner 6

可能想看看TextWriter类.

//Open File
TextWriter tw = new StreamWriter("file.txt");

//Write to file
tw.WriteLine("test info");

//Close File
tw.Close();
Run Code Online (Sandbox Code Playgroud)


son*_*iic 6

或者你可以使用 File.AppendAllLines(string, IEnumerable<string>)

File.AppendAllLines(@"C:\Path\file.txt", new[] { "my text content" });
Run Code Online (Sandbox Code Playgroud)