ReadLine 吃掉波浪号

ReadLine eats up tilde

当我注意到一些奇怪的事情时,我正在为我正在做的工作做一个小测试程序。采取以下片段:

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

如果我输入带有 tilde 的任何内容,它就会被吃掉。因此,如果我键入 ação,它会写回 açao

谁能解释一下为什么?所有其他口音都很管用。

似乎是编码问题,请尝试将 input/output 编码更改为 unicode:

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