比如一个文本文件,其中一行为“abc 111111”。
现在我在代码中找到匹配的abc,希望将其后面的111111改为222222,应如何处理?
在msdn中没有找到相关文档,只找到追加文本的。
谢谢!
现在我在代码中找到匹配的abc,希望将其后面的111111改为222222,应如何处理?
在msdn中没有找到相关文档,只找到追加文本的。
谢谢!
解决方案 »
- 无法将类型为“DataGridViewTextBoxCell”的对象强制转换为类型“TreeGridCell“
- tablelayoutpanel可以动态添加一列吗?比如原来是2行2列,现在我想把它变成2行3列,怎么办?请高手帮忙,谢谢!
- 如何获得局域网中所有的打印机名称列表??
- 为什么加了using之后StreamWriter可以不用Close?
- string.Fomrat("{0:x},{1:x}",(int)'一',(int)'龥');在线等???一简单问题
- 生成图片的问题.这段代码有啥问题? 解决马上接贴.
- C#里的接口疑惑,求解。
- 关于监视文件改动的问题
- 请问点击按钮时为出现虚线框,我怎么去除这个虚线框?
- 怎样动态显示结果?
- 如何从头创建一个WebService服务(广域网)
- 在WinForm中如何把datagridview任意一行设为当前行(CurrentRow).急!!!
既然你读到了你要的这行,而且都找到了ABC,那后面的好找啊.string.substring(string.indexof('abc'))
顺序读取文件内容,每读一行就寻找"abc 111111",找到就将它替换为你要的内容,然后重新写入一个中间文件。文件读完后删除原文件,将中文文件改名为原文件名。
不知道这样可行否?关注
用正则表达式
string str = "abc 111111";
Regex regabc= new Regex("abc *(?<group>[0-9]+)",RegexOptions.IgnoreCase|RegexOptions.Multiline);
MatchCollection abcFound = regabc.Matches(str);GroupCollection abcGroups;string tempm = null;
foreach(Match matchMade in abcFound)
{
...
}
自己再看看帮助吧,也可以用regex.replace()
其实我现在的问题不是在查找方面,而是在找到之后怎么改。
我以为可以轻松搞定的,谁知msdn里根本没有关于在文件内部修改的,全是append……
难道真要重新生成一个文件?那我就考虑要不要用数据库了。
继续征求此问题的解答。