如何在 C# 代码中转换使用 Console.ReadLine() 函数获取的字符串输入???假设我创建了 2 个整数变量 a 和 b。现在我想从用户那里获取 a 和 b 的值。如何在 C# 中执行此操作?
问问题
1403 次
7 回答
9
我通常使用的另一个选项是int.TryParse
int retunedInt;
bool conversionSucceed = int.TryParse("your string", out retunedInt);
所以它非常适合容错模式,例如:
if(!int.TryParse("your string", out retunedInt))
throw new FormatException("Not well formatted string");
于 2013-04-04T11:04:38.857 回答
2
试试这个(确保他们输入有效的字符串):
int a = int.Parse(Console.ReadLine());
还有这个:
int a;
string input;
do
{
input = Console.ReadLine();
} while (!int.TryParse(input, out a));
于 2013-04-04T11:03:11.430 回答
2
您可以将其与Int32.TryParse()
;
将数字的字符串表示形式转换为其等效的 32 位有符号整数。返回值指示转换是否成功。
int i;
bool b = Int32.TryParse(yourstring, out i);
于 2013-04-04T11:06:10.873 回答
1
您可以使用int.TryParse
int number;
bool result = Int32.TryParse(value, out number);
TryParse 方法与 Parse 方法类似,只是 TryParse 方法在转换失败时不会抛出异常。它消除了在 s 无效且无法成功解析的情况下使用异常处理来测试 FormatException 的需要。参考
于 2013-04-04T11:05:08.750 回答
1
于 2013-04-04T11:05:13.357 回答
1
使用 Int32.TryParse 避免出现异常,以防您的用户未键入整数
string userInput = Console.ReadLine();
int a;
if (Int32.TryParse(userInput, out a))
Console.WriteLine("You have typed an integer number");
else
Console.WriteLine("Your text is not an integer number");
于 2013-04-04T11:05:23.267 回答
0
像这样使用int.TryParse
:
int a;
Console.WriteLine("Enter number: ");
while (!int.TryParse(Console.ReadLine(), out a))
{
Console.Write("\nEnter valid number (integer): ");
}
Console.WriteLine("The number entered: {0}", a);
于 2013-04-04T11:11:22.027 回答