C#读写操作请教

来源:百度知道 编辑:UC知道 时间:2024/06/29 01:53:05
我想读从.txt文件中,找到指定字符的位置后边追加几个字符"abc",请教这个功能要怎么写。我尝试过filestream ,streamreader,streamwriter,但是读出来的,有些字呈现的是乱码,就这些问题,我该怎么解决,可以写一段能用的代码给我参考吗
一楼的代码好像可以,但是我要替换的是几个地方,内容不一样,那不就ReadAllText几次了?

string content=System.IO.File.ReadAllText(@"C:\TXTFILE.TXT",UTF8Encoding.UTF8);
const string targetStr = "key";
int keyIdx = content.IndexOf(targetStr);
content.Insert(keyIdx + targetStr.Length, "abc");

你先确定你的txt文件是以什么编码保存的UTF8,ANSI?
用记事本打开那个文件,点另存为,看一下编码即可。
然后用相应的编码打开。
StreamReader objReader=new StreamReader(@"C:\你的文件.txt",System.Text.Encoding.UTF8);
后面的编码可替换为以下,具体自己试试
System.Text.Encoding.Default
System.Text.Encoding.GetEncoding("GB2312")
System.Text.Encoding.GetEncoding("Big5")
常用的就这几种,如果是什么日文,阿拉伯文的话,我也不知道,你自己查MSDN手册吧

int keyIdx = content.IndexOf(targetStr);
content.Insert(keyIdx + targetStr.Length, "abc");