2017-02-19 38 views
0

我是学生工作的一个​​3210和我精确复制下面的代码书上是怎么说的:未处理的格式

intNumberofBikes = Convert.ToInt32(strNumberofBikes) 

我得到以下的错误: VbScreenShot

任何帮助将不胜感激,我无法找出代码有什么问题。

+0

'strNumberOfBikes'大概类型的变量'String',其可以包含非数值。试图将这些值转换为数字通常会导致此错误。 –

+0

谢谢你的回应Zev。除了字符串,我会使用什么变量类型来停止抛出这个错误?这正是本书希望我输入的内容。嗯。 – Siodinn

+0

请阅读[问]并参加[旅游]。链接到代码或错误消息的图片没有得到很好的接收:它使未来的访问者难以搜索有相同错误的帮助。我们不需要标题中的标签。 – Plutonix

回答

1

这个错误是因为你有不是数字的文本字段中输入字符...试试下面这个...

Dim intBikes As Integer = 0 
Integer.TryParse(strNumberofBikes, intBikes) 

错误就会消失,如果它成功地intBikes将计解析文本字段。

包裹起来整个事情...

Dim intBikes As Integer 
Dim decTotalCost As Decimal 
If Integer.TryParse(txtNumberOfBikes.Text, intBikes) Then 
    decTotalCost = intBikes * _cdecPricePerBike 
    lblTotalCost.Text = decTotalCost.ToString("C") 
End If 
+0

谢谢你的回应Zaggler。我会尝试你链接的代码。我想知道这本书是否故意这样做,看看我能否改正错误?谢谢 – Siodinn

+0

也许是这样,但始终要对输入进行清理;用户的不能被信任,我们必须帮助他们:) – Codexer

+0

这是真的大声笑VB是我除HTML和CSS之外的第一个编码,它很难算。所以我对所有的程序和术语都很陌生。有很长的路要走! – Siodinn