请解释这个Convert.ToInt64 InputStringFormat异常

时间:2009-01-27 05:30:23

标签: c# .net type-conversion

有人可以告诉我原因:

var nl = Convert.ToInt64("17029268.1650117");

失败了,而你必须这样做:

var nl = Convert.ToInt64(Convert.ToDouble("17029268.1650117"));

因为它看起来很蠢!

2 个答案:

答案 0 :(得分:7)

manual说:

  

出现FormatException:

     

值不包含可选符号后跟一系列数字(从零到九)。

.不在 a sequence of digits 中。

答案 1 :(得分:4)

你应该也可以使用long.Parse(str)

长是一个整数,所以你不能有小数点。 (试着在twitter上告诉你:))