记录C#写文件的几种方式:
- System.IO.File类提供用于创建,复制,删除,移动和打开单个文件的静态方法,方便操作文本文件。例如下面的例子,一行代码即可完成写文件操作,创建一个新文件,将内容写入文件,然后关闭文件。如果目标文件已存在,则会覆盖。
- System.IO.StreamWriter用于将字符写入流,支持常见编码格式,支持append,写完后别忘了Close()或者Dispose(true)。
using System.IO;
namespace WriteFile
{
class Program
{
static void Main(string[] args)
{
WriteText();
WriteLine();
WriteSelectedString();
WriteAppend();
}
// 写字符串
public static void WriteText()
{
string text =
"A class is the most powerful data type in C#. Like a structure, " +
"a class defines the data and behavior of the data type. ";
File.WriteAllText("WriteText.txt", text);
}
// 写多行
public static void WriteLine()
{
string[] lines =
{
"First line", "Second line", "Third line"
};
File.WriteAllLines("WriteLines1.txt", lines);
}
// 有选择地写
public static void WriteSelectedString()
{
string[] lines = { "First line", "Second line", "Third line" };
StreamWriter file = new StreamWriter("WriteLines2.txt");
foreach (string line in lines)
{
if (!line.Contains("Second"))
{
file.WriteLine(line);
}
}
file.Close();
}
// 在文件末尾续写
public static void WriteAppend()
{
StreamWriter file = new StreamWriter("WriteLines2.txt", append: true);
file.WriteLineAsync("Fourth line");
file.Close();
}
}
}
以上是.NET Framework 4.x支持的方法,.NET 6的类似操作参考How to write to a text file。