我正在尝试制作一个简单的计算器,并且可以完全正常工作,但是当我在没有=
按钮的情况下进行计算时,我的程序完全崩溃并给出错误:
System.FormatException:'输入字符串的格式不正确。'
这是它向以下位置抛出错误的代码:
second = double.Parse(aNumber);
// the strings and doubles:
String aNumber = "";
double first = 0.0;
答案 0 :(得分:0)
b将为true或false d将包含双精度数或0,如果失败 将anum更改为有效数字以进行测试。
String anum = "";
double d = 0.0;
bool b = double.TryParse(anum, out d);
答案 1 :(得分:0)
double.Parse将在输入无效的情况下引发异常。因此,您要么需要使用try catch-要么首选方式是使用double.TryParse,如下所示。如果TryParse返回true,则下面的y值将设置为该值。
class Program
{
static void Main(string[] args)
{
// This will cause an exception
var someString = "SomeValue";
var x = double.Parse(someString); // Comment this line out to run this example
// This will work
double y;
if (double.TryParse(someString, out y))
{
Console.WriteLine(someString + " is a valid decimal");
}
else
{
Console.WriteLine(someString + " is not a valid decimal");
}
someString = "14.7";
if (double.TryParse(someString, out y))
{
Console.WriteLine(someString + " is a valid decimal");
}
else
{
Console.WriteLine(someString + " is not a valid decimal");
}
}
}