C# 在读取字符后立即读取整数?

C# 在读取字符后立即读取整数?,c#,console-application,C#,Console Application,这太尴尬了 在开发一种要翻译成C#的语言时,我发现在读取字符后尝试读取整数时存在冲突 char foo = (char) Console.Read(); int bar = int.Parse(Console.ReadLine()); 不起作用,因为从int.Parse读取返回'/r',而不是一次全新的读取尝试 有什么简单/明显的方法可以解决这个问题吗 提前感谢您的帮助。添加另一个Console.ReadLine()使用\r\n char foo = (char) Console.Read()

这太尴尬了

在开发一种要翻译成C#的语言时,我发现在读取字符后尝试读取整数时存在冲突

char foo = (char) Console.Read();
int bar = int.Parse(Console.ReadLine());
不起作用,因为从int.Parse读取返回'/r',而不是一次全新的读取尝试

有什么简单/明显的方法可以解决这个问题吗


提前感谢您的帮助。

添加另一个
Console.ReadLine()
使用
\r\n

char foo = (char) Console.Read();
Console.ReadLine();
int bar = int.Parse(Console.ReadLine());

为什么不在中间放一个<代码>读行< /代码>?
char foo = (char)Console.Read();
Console.ReadLine(); // empties input buffer
int bar = int.Parse(Console.ReadLine());

你的问题到底是什么?你能描述一下你想要什么样的输出吗?你想要什么样的输入,你想要什么样的输入,你想要什么样的输出,你想要什么样的输出?还有,在解析不同类型的用户输入时,请考虑使用<代码> TyPARSE ,以防止不必要的例外。请记住,如果不使用ReadKey(),控制台输入是基于行的。换句话说,只有按Enter键,Read()调用才会完成。但是ReadLine()肯定会返回其余的,假设有。更好地描述你的问题。谢谢,这就是我所需要的。很抱歉给您带来不便/问题表述不当。@user2428986如果您总是先有一个char,然后是一个换行符,然后是一个int,那么这将起作用。是这样吗?