大家好,例如当我用记事本打开一个文本文件时,它会显示例如这个字符(对我来说这个输出没问题)
"ÍÜÞ ËÀÉÍ ÑÈÍÅÌÀ"
"ÕÅÐÎÍ ÊÎÌÌÜÞÍÈÊÅÉØÍÇ"
但是当我尝试用C#
阅读它时OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == DialogResult.OK)
{
text = File.ReadAllText(ofd.FileName);
textBox1.Text = text;
}
显示
"��� ���� ������"
"����� ��������������"
答案 0 :(得分:4)
您需要将正确的编码传递给File.ReadAllText
:
textBox1.Text = File.ReadAllText(ofd.FileName, encoding);
但是,您需要预先知道编码,或者使用启发式方法进行处理(总是有可能会出错)。
对于您的实际用例,您知道编码是什么吗?