我正在使用ReadAllText读取文件
String[] values = File.ReadAllText(@"c:\\c\\file.txt").Split(';');
int i = 0;
foreach (String s in values)
{
System.Console.WriteLine("output: {0} {1} ", i, s);
i++;
}
Run Code Online (Sandbox Code Playgroud)
如果我试着读一些文件,我有时会得到错误的字符(对于ÖÜÄ......).输出就像'?',因为编码存在一些问题:
output: 0 TEST
output: 1 A??O?
Run Code Online (Sandbox Code Playgroud)
一种解决方案是在ReadAllText中设置编码,让我们说这样ReadAllText(@"c:\\c\\file.txt", Encoding.UTF8)可以解决问题.但是,如果我仍然会得到'?' 作为输出?如果我不知道文件的编码怎么办?如果每个文件都有不同的编码怎么办?用c#做最好的方法是什么?谢谢