首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

FileStream读取文件时出现乱码解决方案

2012-05-14 
FileStream读取文件时出现乱码做一个记事本程序时用filestream读取汉字时出现乱码,而读取字符时不出错,代

FileStream读取文件时出现乱码
做一个记事本程序时用filestream读取汉字时出现乱码,而读取字符时不出错,代码如下,求高手帮忙。

 private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
  {
  byte[] b = new byte[500];
  OpenFileDialog fi = new OpenFileDialog();
  fi.InitialDirectory = @"d:\";
  fi.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
  fi.FilterIndex = 1;
  fi.RestoreDirectory = true;
  if (fi.ShowDialog() == DialogResult.OK)
  {
  FileStream fs = new FileStream(fi.FileName, FileMode.Open);
  fs.Seek(0, SeekOrigin.Begin);
  fs.Read(b, 0, 500);
  fs.Close();
  string str = Encoding.UTF8.GetString(b);
  textBox1.Text = str;
  }
  else
  {
  textBox1.Text = "";
  }
  }

[解决办法]
试试gb2312

[解决办法]
你需要监视一下那里出现了乱码。然后再进行处理
[解决办法]

探讨
我靠 utf8都不行 gb2312就行吗

[解决办法]
建议用StreamReader读取,会帮你自动进行编码转换,当然要指定Encoding,不过如4L所说,首先要知道文件是什么类型编码,
[解决办法]
我靠 人才啊
探讨

我靠 utf8都不行 gb2312就行吗

热点排行