比如一个文本。可能很长
但是最后结尾是
eeee 4个e。我想在最后的2个e之前插入一段文本。变成
ee我插入的文本ee问题2,有一个字符串 string s = "中文,符号.xxx";
要得到这个字符串的长度 14 也就是双自己的算2,单字节的算1.

解决方案 »

  1.   

    1、string s = "eeee";
    string temp = "XXX";
    s = s.SubString(0,s.Length - 2) + temp + s.SubString(s.Length - 2);
    2、string s = "中文,符号.xxx";
    Console.WriteLine(Encoding.Default.GetByteCount(s));
      

  2.   

    lovefootball(蟑螂(生活就是扯淡--做人要放低姿态)) 
    你好。我的意思是一个很大的文本。我不想把全部文本读入string。想直接操作文本。在其后2个字符处插入一段文本。或者删除两个字符后我在添加一段文本
      

  3.   

    using (FileStream fs = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.ReadWrite))
                {
                    fs.Seek(-2, SeekOrigin.End);
                    string temp = "aaaa";
                    temp += "ee";//加上最后的ee
                    byte[] b = Encoding.Default.GetBytes(temp);
                    fs.Write(b, 0, b.Length);
                }你还可以加上lock