首页 热点资讯 义务教育 高等教育 出国留学 考研考公

请问一下用C#程序怎么操作一个txt文件

发布网友

我来回答

3个回答

热心网友

1、添加命名空间 using System.IO;

我的思路是把文件全部读出来,再进行字符操作,再写入
因为流操作没有很好的移动位置的功能。
以下代码如果阅读有困难,请上MSDN查阅相关说明。
【有疑问可以HI我,或追问,但请不要关闭问题,谢谢!】
2、
private void button1_Click_1(object sender, EventArgs e)
{
List<string> txtList = new List<string>();
FileStream fs = new FileStream(@"E:\a.txt",FileMode.Open,FileAccess.ReadWrite);//地址自己改
StreamReader sr = new StreamReader(fs);
while(sr.Peek()>=0)
{
txtList.Add(sr.ReadLine());
}
sr.Close();
txtList.Add("name=yyyyy");//最后一行加入

txtList[2]= "IP=192.16.5.25";//第三行替换,注意index是从0开始算的。

txtList.Insert(2, "age=aaaaa");//2,3行间插入

try
{
StreamWriter sw = new StreamWriter(fs.Name);
foreach (string curr in txtList)
{
sw.WriteLine(curr);
}
sw.Close();
fs.Close();
MessageBox.Show("操作成功!");
}
catch (Exception err)
{
MessageBox.Show(err.Message);
}
}

热心网友

这个没有插入的方法,只有追加的方法,你可以先把所有的读出来,再写进去,重新保存。
这个用流操作即可。

基本和楼上是一样的

using System.IO;

string path = @"D:\a.txt";//文件路径
List<string> strlist = new List<string>();//用来存读出信息的
using (StreamReader sr = new StreamReader(path))
{
while (sr.Peek() > 0)
{
strlist.Add(sr.ReadLine());
}
}
strlist.Add("NAME=cocker");//追加一行
strlist.Insert(2,"AGE=30");//插入一行
strlist[3]="IP=192.16.5.25";//替换的数据

using (StreamWriter sw = new StreamWriter(path))
{
foreach (string s in strlist)
{
sw.WriteLine(s);
}
}

热心网友

你可以先看书。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com