我在 VB.NET 中有一个函数,它循环遍历值并尝试将其转换为小数,如果IsNumeric
是真的,
Dim Value As String
If IsNumeric(Value) = True Then
Rate = CType(Value, Decimal) <--- bombing here
End If
我发现当函数收到值 603E43 时IsNumeric
由于某种原因评估为 True,然后在转换时发生爆炸。为什么会IsNumeric
在这种情况下是真的吗?
See http://support.microsoft.com/kb/329488 http://support.microsoft.com/kb/329488
如果 IsNumeric 可以转换为 a,则返回 truedouble603E43 也是如此
然而,该值大于小数所能容纳的值
您可以使用 Decimal.TryParse 函数作为替代方法。看http://msdn.microsoft.com/en-us/library/9zbda557.aspx http://msdn.microsoft.com/en-us/library/9zbda557.aspx
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)