C# 在C中将字符串输入更改为int#

C# 在C中将字符串输入更改为int#,c#,C#,如何在C代码中使用Console.ReadLine()函数转换字符串输入???假设我创建了两个整数变量a和b。现在我想从用户那里获取a和b的值。如何在C#中执行此操作?尝试此操作(确保他们输入有效字符串): 还包括: int a; string input; do { input = Console.ReadLine(); } while (!int.TryParse(input, out a)); 我通常使用的另一种选择是 因此,它非常适合容错模式,如: if(!int.TryPa

如何在C代码中使用Console.ReadLine()函数转换字符串输入???假设我创建了两个整数变量a和b。现在我想从用户那里获取a和b的值。如何在C#中执行此操作?

尝试此操作(确保他们输入有效字符串):

还包括:

int a;
string input;
do
{
    input = Console.ReadLine();

} while (!int.TryParse(input, out a));

我通常使用的另一种选择是

因此,它非常适合容错模式,如:

if(!int.TryParse("your string", out retunedInt)) 
  throw new FormatException("Not well formatted string");
你可以用

除了TryParse之外,TryParse方法与Parse方法类似 方法不会在转换失败时引发异常。信息技术 无需使用异常处理来测试 事件中的FormatException无效且无法删除 已成功解析

您可以使用:


使用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");
你可以使用它与

将数字的字符串表示形式转换为其32位有符号 整数等价。返回值指示转换是否成功 成功了


使用
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);

int.Parse()
。您尝试过什么?如果您不确定输入是否为字符串,并且希望避免异常,也可以使用
int.TryParse
。+1。出于好奇,如果您正在抛出异常,为什么不使用int.parse并处理可能抛出的异常?@keyboardP:1。您可以处理一些presice(您引发的自定义异常)并继续运行程序2。您可能会认为根本不使用exceptino,而只是以某种方式处理流。啊,好的,我明白了。通常出于第二个原因,我使用
TryParse
,但我发现程序可能有自定义异常和日志记录,这将非常有用。只是确保我没有错过一些秘密
TryParse
用法:D
int number;
bool result = Int32.TryParse(value, out number);
Convert.ToInt32(input);
bool success = Int32.TryParse(value, out number);
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");
int i;
bool b = Int32.TryParse(yourstring, out i);
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);