我正在尝试创建一个能够输出不同语言的命令行程序。
有没有办法通过Console.WriteLine设置输出到命令行的编码?
我想在utf-8和shift-JIS之间进行交换,而不是假设命令shell程序的格式正确。
只是为了添加更多相关信息。我当前的代码读入一个具有特殊字符的文件:
"Fadó, fadó"
但输出未正确显示特殊字符:
"Fado, fado"
我只是使用Console.WriteLine:
foreach (string s in lines)
{
Console.WriteLine(s);
}
我还没弄清楚如何设置Console.WriteLine的编码。它是否可能,或者是否有人可以指出的替代方案?
答案 0 :(得分:0)
似乎您需要使用Unicode
编码。
string[] lines = new[] { "Fadó", "fadó" };
Console.OutputEncoding = Encoding.Unicode;
foreach (string s in lines) { Console.WriteLine(s); }