在处理C# int.Parse 异常时,你可以通过以下几种方式来正确处理异常:
- 使用 Try-Catch 块:在调用 int.Parse 方法时,将其放置在一个 Try-Catch 块中,以捕获可能抛出的异常,并在 Catch 块中处理异常情况。
try { int result = int.Parse(input); } catch (FormatException ex) { Console.WriteLine("输入的字符串格式不正确"); } catch (OverflowException ex) { Console.WriteLine("输入的字符串超出了整数范围"); }
- 使用 TryParse 方法:另一种处理异常的方法是使用 int.TryParse 方法,该方法不会抛出异常,而是返回一个布尔值来表示转换是否成功,并将结果存储在一个输出参数中。
int result; if (int.TryParse(input, out result)) { // 转换成功,result 中存储了转换后的整数值 } else { // 转换失败,处理异常情况 }
- 使用异常过滤器:在 C# 6.0 及更高版本中,还可以使用异常过滤器来处理特定类型的异常。异常过滤器在 Catch 块中添加一个条件来捕获匹配条件的异常。
try { int result = int.Parse(input); } catch (FormatException ex) when (ex.Message.Contains("Input string was not in a correct format")) { Console.WriteLine("输入的字符串格式不正确"); } catch (OverflowException ex) when (ex.Message.Contains("Value was either too large or too small for an Int32")) { Console.WriteLine("输入的字符串超出了整数范围"); }
通过以上方法,你可以根据具体需求选择合适的方式来处理 int.Parse 方法可能抛出的异常,确保代码执行过程中不会因异常而中断。