发布网友
共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);
}
}
热心网友
你可以先看书。