【发布时间】:2014-12-04 21:13:33
【问题描述】:
我的输入被“TryParse”检查。如果它是假的,我想让用户正确地重新输入它。但是,当我在检查后单击任何键时,它会删除“Console.Clear();”原因之上的所有内容。 - 我只想删除输入部分,上面什么都没有。
namespace Practice
{
class Program
{
static void Main(string[] args) // Main Method
{
byte age1, age2;
string input;
do
{
Console.Write("Enter Age 1: "); input = Console.ReadLine();
if (!byte.TryParse(input, out age1)) Error();
} while (!byte.TryParse(input, out age1));
do
{
Console.Write("Enter Age 2: "); input = Console.ReadLine();
if (!byte.TryParse(input, out age1)) Error();
} while (!byte.TryParse(input, out age2));
}
static void Error()
{
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("Invalid Input...");
Console.ResetColor();
Console.ReadKey();
Console.Clear();
}
}
}
【问题讨论】:
-
你是在问你的代码风格吗?
-
byte age1, age2应该是int || Int32还请修复格式错误的代码.. 也不要将多行代码放在一行上.. 很难阅读什么你正在尝试做并且很容易在这条线上被查看或错过Console.WriteLine("Age 1-> {0},如果你使用string.Format()方法,我认为它会很干净 -
没有理由改变字节......字节是0-255,我认为没有多少人能活到那个年龄。
-
我不确定您是否可以从控制台缓冲区中删除一行。
标签: c# output user-input presentation tryparse