嗨我想尝试制作一个简单的计算器,因为我是C#的新手,并且不熟悉,无论如何,当我尝试通过试试处理格式异常时,当我输入时我没有工作值而不是数字它总是抛出异常而不执行catch块
try
{
Val1 = double.Parse(opr1.Text);
Val2 = double.Parse(opr2.Text);
double sum = Val1 + Val2;
label1.Text = sum.ToString();
}
catch(Exception ex //or FormatException)
{
label1.Text = "Please enter the proper data type";
}
在尝试转换错误的值而不执行catch块时,总是会出错
答案 0 :(得分:4)
这是一种无异常处理它的方法。
bool noErrorMsg= true;
noErrorMsg &= double.TryParse(opr1.Text, out Val1);
noErrorMsg &= double.TryParse(opr2.Text, out Val2);
if(!noErrorMsg)
{
//Error
}
如果无法进行解析, TryParse
将返回false。