1

大家好,例如,当我用记事本打开一个文本文件时,它会显示例如这个字符(对我来说这个输出没问题)

"ÍÜÞ ËÀÉÍ ÑÈÍÅÌÀ"
"ÕÅÐÎÍ ÊÎÌÌÜÞÍÈÊÅÉØÍÇ"

但是当我尝试用 C# 阅读它时

OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == DialogResult.OK)
{
     text = File.ReadAllText(ofd.FileName);
     textBox1.Text = text;
}

表明

"��� ���� ������"
"����� ��������������"
4

1 回答 1

4

您需要将正确的编码传递给File.ReadAllText

textBox1.Text = File.ReadAllText(ofd.FileName, encoding);

但是,您需要事先知道编码,或者使用启发式方法来解决(总有可能您会得到错误的编码)。

对于您的实际用例,您知道编码是什么吗?

于 2012-06-18T07:44:16.337 回答