将HTML文件读入文本框会将撇号和子弹转换为?

时间:2010-11-22 20:54:17

标签: c# encoding streamreader

我正在使用StreamReader(在C#中)将HTML文件的内容读入文本框。无论我使用哪种编码作为up up,所有撇号和项目符号都会变成问号。

是否有其他方法可以读取保留这些字符的HTML文件?

谢谢! 杰里

以下是代码:

private void button1_Click(object sender, EventArgs e)
 {
     DialogResult result = openFileDialog1.ShowDialog(); 
     if (result == DialogResult.Cancel) 
         return; 

     StreamReader sr = new StreamReader(openFileDialog1.FileName); 

     txtMessage.Text = sr.ReadToEnd(); 
     sr.Close(); 
 }

我还使用了带有Encoding参数的StreamReader(尝试过每一个)。它似乎唯一能做的就是解释问号是规则的还是颠倒的(带有白色问号的黑色钻石)。

如果它有任何区别,则文件由另一个部门在Word中创建,然后导出为Filtered HTML。

最后一件事:如果我在记事本之类的东西中打开HTML文件并将文本复制/粘贴到文本框中,那么所有内容都应该完全正确。

只有在我尝试通过阅读器提取文件时才会发生更改。

1 个答案:

答案 0 :(得分:0)

我会尝试使用new StreamReader(..., Encoding.UTF8);new StreamReader(..., Encoding.GetEncoding("iso-8859-1"));,如果这不起作用,那么我会去创建文件的人并在他们的指甲下塞针,直到他们承认什么编码他们曾经创造过它。