C#读取文本文件





今天一个学生问我如何从一个文本中读取内容,如下是做的是控制台中的例子,在别的地方也是这个道理。




// 读操作


public static void Read()

{


// 读取文件的源路径及其读取流


string strReadFilePath = @"../../data/ReadLog.txt";

StreamReader srReadFile = new StreamReader(strReadFilePath);



// 读取流直至文件末尾结束


while (!srReadFile.EndOfStream)

{

string strReadLine = srReadFile.ReadLine();

//读取每行数据


Console.WriteLine(strReadLine);

//屏幕打印每行数据


}



// 关闭读取流文件


srReadFile.Close();

Console.ReadKey();

}

===================================================================





C# 写文本文件











// 写操作


public static void Write()

{


// 统计写入(读取的行数)


int WriteRows = 0;



// 读取文件的源路径及其读取流


string strReadFilePath = @"../../data/ReadLog.txt";

StreamReader srReadFile = new StreamReader(strReadFilePath);



// 写入文件的源路径及其写入流


string strWriteFilePath = @"../../data/WriteLog.txt";

StreamWriter swWriteFile = File.CreateText(strWriteFilePath);



// 读取流直至文件末尾结束,并逐行写入另一文件内


while (!srReadFile.EndOfStream)

{

string strReadLine = srReadFile.ReadLine();

//读取每行数据


++WriteRows; //统计写入(读取)的数据行数


swWriteFile.WriteLine(strReadLine);

//写入读取的每行数据


Console.WriteLine("正在写入... " + strReadLine);

}



// 关闭流文件


srReadFile.Close();

swWriteFile.Close();


Console.WriteLine("共计写入记录总数:" + WriteRows);

Console.ReadKey();

}



========================================================================




完整源代码



(经过本人测试,直接运行就可)


using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;


using System.IO; // 引用输入输出操作的命令空间


namespace ReadWriteFile

{

class Program

{



// 主函数


static void Main(string[] args)

{

Read(); // 读操作


Write(); // 写操作

}



// 读操作


public static void Read()

{

// 读取文件的源路径及其读取流

string strReadFilePath = @"../../data/ReadLog.txt";

StreamReader srReadFile = new StreamReader(strReadFilePath);


// 读取流直至文件末尾结束

while (!srReadFile.EndOfStream)

{

string strReadLine = srReadFile.ReadLine(); //读取每行数据

Console.WriteLine(strReadLine); //屏幕打印每行数据

}


// 关闭读取流文件

srReadFile.Close();

Console.ReadKey();

}



// 写操作


public static void Write()

{

// 统计写入(读取的行数)

int WriteRows = 0;


// 读取文件的源路径及其读取流

string strReadFilePath = @"../../data/ReadLog.txt";

StreamReader srReadFile = new StreamReader(strReadFilePath);


// 写入文件的源路径及其写入流

string strWriteFilePath = @"../../data/WriteLog.txt";

StreamWriter swWriteFile = File.CreateText(strWriteFilePath);


// 读取流直至文件末尾结束,并逐行写入另一文件内

while (!srReadFile.EndOfStream)

{

string strReadLine = srReadFile.ReadLine(); //读取每行数据

++WriteRows; //统计写入(读取)的数据行数


swWriteFile.WriteLine(strReadLine); //写入读取的每行数据

Console.WriteLine("正在写入... " + strReadLine);

}


// 关闭流文件

srReadFile.Close();

swWriteFile.Close();


Console.WriteLine("共计写入记录总数:" + WriteRows);

Console.ReadKey();

}

}

}