在c#中有很多不同的方法来读写文件(文本文件,而不是二进制文件)。

我只需要一些简单的东西,使用最少的代码,因为我将在我的项目中大量使用文件。我只需要一些字符串,因为我所需要的是读写字符串。


当前回答

除了文件。ReadAllText,文件。ReadAllLines和File。WriteAllText(和类似的帮助从文件类)显示在另一个答案,你可以使用StreamWriter/StreamReader类。

写入文本文件:

using(StreamWriter writetext = new StreamWriter("write.txt"))
{
    writetext.WriteLine("writing in text file");
}

读取文本文件:

using(StreamReader readtext = new StreamReader("readme.txt"))
{
   string readText = readtext.ReadLine();
}

注:

您可以使用readtext.Dispose()而不是using,但它不会在异常情况下关闭文件/读取器/写入器 请注意,相对路径是相对于当前工作目录。您可能希望使用/构造绝对路径。 缺少使用/Close是“为什么数据不写入文件”的常见原因。

其他回答

除了文件。ReadAllText,文件。ReadAllLines和File。WriteAllText(和类似的帮助从文件类)显示在另一个答案,你可以使用StreamWriter/StreamReader类。

写入文本文件:

using(StreamWriter writetext = new StreamWriter("write.txt"))
{
    writetext.WriteLine("writing in text file");
}

读取文本文件:

using(StreamReader readtext = new StreamReader("readme.txt"))
{
   string readText = readtext.ReadLine();
}

注:

您可以使用readtext.Dispose()而不是using,但它不会在异常情况下关闭文件/读取器/写入器 请注意,相对路径是相对于当前工作目录。您可能希望使用/构造绝对路径。 缺少使用/Close是“为什么数据不写入文件”的常见原因。

FileStream fs = new FileStream(txtSourcePath.Text,FileMode.Open, FileAccess.Read);
using(StreamReader sr = new StreamReader(fs))
{
   using (StreamWriter sw = new StreamWriter(Destination))
   {
            sw.Writeline("Your text");
    }
}

使用文件。ReadAllText和File.WriteAllText。

MSDN示例节选:

// Create a file to write to.
string createText = "Hello and Welcome" + Environment.NewLine;
File.WriteAllText(path, createText);

...

// Open the file to read from.
string readText = File.ReadAllText(path);
     class Program
    { 
         public static void Main()
        { 
            //To write in a txt file
             File.WriteAllText("C:\\Users\\HP\\Desktop\\c#file.txt", "Hello and Welcome");

           //To Read from a txt file & print on console
             string  copyTxt = File.ReadAllText("C:\\Users\\HP\\Desktop\\c#file.txt");
             Console.Out.WriteLine("{0}",copyTxt);
        }      
    }
private void Form1_Load(object sender, EventArgs e)
    {
        //Write a file
        string text = "The text inside the file.";
        System.IO.File.WriteAllText("file_name.txt", text);

        //Read a file
        string read = System.IO.File.ReadAllText("file_name.txt");
        MessageBox.Show(read); //Display text in the file
    }