如果用户输入不是数字

时间:2015-09-26 19:14:44

标签: c# string integer converter

这是一个非常简单的脚本,我想弄清楚,我一直在寻找一个简单的答案,无法在论坛或我的C#书中找到它。

Console.Write("Enter a Number\n");
int input = Convert.ToInt32(Console.ReadLine()); //convert code to an integer

if (!Int32.IsNumber(input)) //if not a whole number input give an error
{
    Console.WriteLine("Not an integer");
}

这就是我想要做的事情。这是一个更大代码的片段。

2 个答案:

答案 0 :(得分:8)

Console.Write("Enter a Number\n");
string input = Console.ReadLine(); //get the input
int num = -1;
if (!int.TryParse(input, out num))
{
    Console.WriteLine("Not an integer");
}
else
{
   ...
}
如果字符串不是有效整数,

Int.TryParse将返回false,反之亦然

答案 1 :(得分:0)

我找到了最简单,最好的代码,可以从很多答案中完成:

Console.Write("\nEnter a Whole Number (Such as 12)\n");
string Input = Console.ReadLine();

char firstChar = Input[0];
bool isNumber = Char.IsDigit(firstChar);

if (!isNumber)
{
     Console.WriteLine("Not an integer");
} 
else 
 {
.......
}