那你可以这样想读到一个string中然后string.Replace('/n','')

解决方案 »

  1.   

    有没有更好的办法?(直接Encoding处理)
      

  2.   

    StreamWriter sw=new StreamWriter(fs,Encoding.GetEncoding("gb2312") );
    sw.Write(TextBox1.Text);
      

  3.   

    这是文件本身的问题.估计是个Unix文件格式.由于历史原因,Unix和DOS中的回车是不一样的.unix上换行是char 10, dos是 char 10 + char 13, Mac是char 13.那个方块就是char 10.
    你把char10改成char 10 + char 13就好了. string fs = @"d:\edit1.txt";
     StreamReader sr = new StreamReader(fs,System.Text.Encoding.GetEncoding("gb2312") );

    string s  = sr.ReadToEnd().Replace("\n",Environment.NewLine);;
    sr.Close();