ReadLine吞噬了浪潮

本文关键字:浪潮 吞噬 ReadLine | 更新日期: 2023-09-27 18:10:45

当我注意到一些奇怪的事情时,我正在为一项工作做一个小的测试程序。看看下面的代码片段:

string words;
while ((words = Console.ReadLine()) != "quit")
{
    Console.WriteLine(words);
}

如果我输入任何带有tilde的东西,它就会被吃掉。因此,如果我输入ação,它会返回açao

有人能解释为什么吗?

ReadLine吞噬了浪潮

似乎是编码问题,尝试将输入/输出编码更改为unicode:

Console.InputEncoding = Encoding.Unicode;
Console.OutputEncoding = Encoding.Unicode;
string words;
while ((words = Console.ReadLine()) != "quit")
{
    Console.WriteLine(words);
}