📜  C# int.parse 输入字符串格式不正确 - C# (1)

📅  最后修改于: 2023-12-03 14:59:40.181000             🧑  作者: Mango

C# int.parse 输入字符串格式不正确

在开发过程中,我们经常需要将字符串转换成整数。C# 提供了 int.parse 方法来实现此功能。然而,当输入的字符串格式不正确时,会抛出异常。本文将介绍如何处理这种异常及相应的解决方法。

int.parse 方法

int.parse 方法是 C# 中用于将字符串转换成整数的常用方法。其语法如下:

int intResult = int.Parse(string s);

其中,s 表示要转换的字符串。如果 s 可以成功转换成整数,则 intResult 将返回转换后的整数值。否则,int.parse 方法将抛出异常。

异常处理

当输入的字符串无法转换成整数时,int.parse 方法将抛出 System.FormatException 异常。例如,下面的代码尝试将字符串 "hello" 转换成整数:

try
{
    int intResult = int.Parse("hello");
}
catch (System.FormatException e)
{
    Console.WriteLine(e.Message);
}

运行代码后,将发现控制台输出了以下信息:

输入字符串格式不正确。
解决方法

为了避免程序在运行时因为 int.parse 方法抛出异常而崩溃,我们可以在调用 int.parse 方法前先对字符串进行验证。我们可以使用 int.tryParse 方法来实现这一过程。

int.tryParse 方法与 int.parse 方法类似,但它不会抛出异常。如果转换成功返回 true,并将转换后的整数值存储在输出参数中;否则,返回 false。

下面是一个使用 int.tryParse 方法的示例:

string str = "hello";
int intResult;
bool success = int.TryParse(str, out intResult);

if (success)
{
    Console.WriteLine($"转换成功:{intResult}");
}
else
{
    Console.WriteLine("输入字符串格式不正确。");
}
结论

在使用 int.parse 方法转换字符串成整数时,一定要注意输入的字符串格式是否正确。可以使用 try-catch 语句处理异常,或者使用 int.tryParse 方法来避免异常的抛出。这样可以增强代码的健壮性,避免程序因为异常而崩溃。