C#读西里尔文

时间:2012-06-18 07:42:23

标签: c# character-encoding

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

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

但是当我尝试用C#

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

显示

"��� ���� ������"
"����� ��������������"

1 个答案:

答案 0 :(得分:4)

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

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

但是,您需要预先知道编码,或者使用启发式方法进行处理(总是有可能会出错)。

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