文本内容如下:
wang
...
wang
...
wang
...
我想把最后一个“wang”修改为“zhang”然后保存,请问该如何修改简单些呢?

解决方案 »

  1.   

    File.ReadAlllines()
    从后面开始找wang,修改成zhang,然后写会文件或者从文件最后倒着向开头读,遇见wang,修改,写回,结束
      

  2.   

    List<string> lst=new List<string>(File.ReadAllLines(""));
    lst[lst.Count-1]="";
    File.WriteAllLines
      

  3.   

    string strTarget = "wang";
                string strC = "zhang";
                List<string> lst = new List<string>(File.ReadAllLines(strFile));
                for (int i = lst.Count - 1; i >= 0; i--) {
                    if (lst[i] == strTarget) {
                        lst[i] = strC;
                        break;
                    }
                }
                
                File.WriteAllLines(strFile, lst.ToArray());
      

  4.   

    谢谢以上三位!都很有启发,我后来又上网查资料是这样解决的,先统计再修改,代码如下:class enter
        {
            public string w1 = "wang";
            public string w2 =“zhang”;
            public void insert(string path)
            {
                FileStream fr = new FileStream(path, FileMode.Open, FileAccess.Read);
                StreamReader sr = new StreamReader(fr);
                string oldstrline = sr.ReadToEnd();
                string[] strs = Regex.Split(oldstrline,w1);
                int i = strs.Length;
                strs[i-1] =w2;
                sr.Close();
                fr.Close();
                string newstrline = string.Join(w1, strs);
                FileStream fw = new FileStream(path, FileMode.Create, FileAccess.Write);
                StreamWriter sw = new StreamWriter(fw);
                sw.WriteLine(newstrline);
                sw.Close();
                fr.Close();
            }
        }
      

  5.   

    上面我自己的回帖和我发帖不一致,但是其实我的本意不是替换wang,而是在wang的下面加东西,谢谢了!