【发布时间】:2015-09-12 05:48:28
【问题描述】:
我正在制作一个库存程序,要求用户输入他们想购买的不同数量的不同物品。我使用这一行将项目数转换为双精度数,以便我可以计算,但我收到一条错误消息,指出我有一个未处理的格式异常,输入字符串的格式不正确。有什么我遗漏的吗?
itembatteries = Convert.ToDouble(txtNumberofBatteries.Text);
【问题讨论】:
-
Convert.ToDouble 如果输入字符串的格式不正确,无法转换为双精度值。正确的格式取决于您的语言环境设置 使用 double.TryParse 代替。顺便说一句,这一切都写在 MSDN 上,在问这里之前做一点搜索总是最好的路径
-
导致它的字符串是什么?如果它不是双重的,那就是原因。
-
你在文本框中输入了什么?此外,根据您的文本框名称,您可能希望将其转换为
int而不是double,因为很难有半块电池。 -
@DaveZych 让我想起了《辛普森一家》的那一集,荷马把 D 电池变成了 AAA :)
-
好吧,价格实际上应该是
decimal,而不是double,我不确定为什么有美分的价格会影响电池数量?您希望有人能够输入 2.3 电池吗?
标签: c#