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

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


当前回答

     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);
        }      
    }

其他回答

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");
    }
}

从文件中读取

string filePath = @"YOUR PATH";
List<string> lines = File.ReadAllLines(filePath).ToList();

写入文件

List<string> lines = new List<string>();
string a = "Something to be written"
lines.Add(a);
File.WriteAllLines(filePath, lines);

除了文件。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是“为什么数据不写入文件”的常见原因。

您正在寻找File、StreamWriter和StreamReader类。

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
    }