今天一个学生问我如何从一个文本中读取内容,如下是做的是控制台中的例子,在别的地方也是这个道理。
// 读操作
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();
}
========================================================================
完整源代码(经过本人测试,直接运行就可)
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();
}
}
}