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 に答える