sf.Write(textBox1.Text); 
这个方法应该有重写的带编码的吧,用UTF-8编码试试

解决方案 »

  1.   

    我以"保存按键"生成.txt文件 在以"打开按键"就会出项乱码  ....如果直接在桌面创建.txt文件打开 不会有乱码 我觉得保存这边有点问题请指点下。在线等待。
      

  2.   

    就是你的编码没有正确设置,
    StreamWriter sf = new StreamWriter(savefiledialog.FileName,false,Encoding.Default);
    sf.Write(textBox1.text);
    sf.Close();
      

  3.   

    编码不正确。
    选择对应的编码。可以用UNICODE。
      

  4.   

          private void button1_Click(object sender, EventArgs e)
            {            OpenFileDialog openfiledialog = new OpenFileDialog();            //openFileDialog1.Title = "打开(Open)";
                //openFileDialog1.Filter = "所有文件(*.*)|*.*";            openFileDialog1.Title = "打开(Open)";        //标题
                openFileDialog1.Filter = "word文件(*.word)|*.word|文本文件(*.txt)|*.txt|所有文件(*.*)|*.*";            if (openFileDialog1.ShowDialog() == DialogResult.OK)
                {
                    StreamReader sr = new StreamReader(openFileDialog1.FileName,Encoding.Default);
                    textBox1.Text = sr.ReadToEnd();
                    sr.Close();            }
            }        private void button2_Click(object sender, EventArgs e)
            {
                SaveFileDialog savefiledialog = new SaveFileDialog();
                savefiledialog.Title = "另存为...";
                savefiledialog.Filter = "所有格式(*.*)|*.*";
                //savefiledialog.ShowDialog();
                  if (string.IsNullOrEmpty(this.textBox1.Text) == true)
                    {
                        MessageBox.Show("请选择保存文件 !");
                        return;
                    }
                    else
                    {
                     if (savefiledialog.ShowDialog() == DialogResult.OK)
                       {                       StreamWriter sf = new StreamWriter(savefiledialog.FileName,false, Encoding.Default);                    sf.Write(textBox1.Text);
                        sf.Close();
                       }
                }        }
        }问题解决了。。谢谢了 顺便分享下 。在完善中...
      

  5.   

    一般加上Encoding.Default就不会乱码了,不然也许比如呃。比如writeline方法写出去的行在记事本里就不会换行了。
    StreamWriter sw = new StreamWriter(savefiledialog.FileName,false,Encoding.Default);