C#读写文本文件的方法
本文实例讲述了C#读写文本文件的方法。分享给大家供大家参考。具体分析如下:
System.IO命名空间中的类为托管应用程序提供文件以及其他形式的输入输出。托管i/o的基本构件是流,而流是字节导向的数据的抽象表示。流通过System.IO.Stream类表示.
System.IO.FileStream允许将文件作为流访问;
System.IO.MemoryStream允许将内存块作为流进行访问
以下为读写文件的示例
先引用命名空间
usingSystem.IO;
以下是源代码
namespace文本文件打开测试
{
publicpartialclassForm1:Form
{
publicForm1()
{
InitializeComponent();
}
privatevoidbtn_Read_Click(objectsender,EventArgse)
{
//异常检测开始
try
{
FileStreamfs=newFileStream(@tB_PachFileName.Text,FileMode.Open,FileAccess.Read);//读取文件设定
StreamReaderm_streamReader=newStreamReader(fs,System.Text.Encoding.GetEncoding("GB2312"));//设定读写的编码
//使用StreamReader类来读取文件
m_streamReader.BaseStream.Seek(0,SeekOrigin.Begin);
//从数据流中读取每一行,直到文件的最后一行,并在rTB_Display.Text中显示出内容
this.rTB_Display.Text="";
stringstrLine=m_streamReader.ReadLine();
while(strLine!=null)
{
this.rTB_Display.Text+=strLine+"\n";
strLine=m_streamReader.ReadLine();
}
//关闭此StreamReader对象
m_streamReader.Close();
}
catch
{
//抛出异常
MessageBox.Show("指定文件不存在");
return;
}
//异常检测结束
}
privatevoidbtn_Replace_Click(objectsender,EventArgse)
{
//判断替换开始
if(tB_Replace.Text==""&&tB_Replace_2.Text=="")
{
MessageBox.Show("想替换的字符都没有就换啊,你太有才了");
}
else
{
if(rTB_Display.Text=="")
{
MessageBox.Show("文件内容为空无法进行替换,请检查文件");
}
else
{
stringstr=rTB_Display.Text.ToString();
rTB_Display.Text=str.Replace(@tB_Replace.Text,@tB_Replace_2.Text);//替换
}
}
//结束
}
privatevoidbtn_Save_Click(objectsender,EventArgse)
{
//异常检测开始
try
{
//创建一个文件流,用以写入或者创建一个StreamWriter
FileStreamfs=newFileStream(@tB_Save.Text,FileMode.OpenOrCreate,FileAccess.Write);
StreamWriterm_streamWriter=newStreamWriter(fs);
m_streamWriter.Flush();
//使用StreamWriter来往文件中写入内容
m_streamWriter.BaseStream.Seek(0,SeekOrigin.Begin);
//把richTextBox1中的内容写入文件
m_streamWriter.Write(rTB_Display.Text);
//关闭此文件
m_streamWriter.Flush();
m_streamWriter.Close();
}
catch
{
//抛出异常
MessageBox.Show("写入文件失败,请检查路径文件名与权限是否符合");
}
//异常检测结束
}
}
}
希望本文所述对大家的C#程序设计有所帮助。