将具有许多前导零的字符串转换为十进制
Converting string with many leading zeros to decimal
如何转换如下所示的字符串:
0005.47
到十进制值5.47
.
这个值保存在 newStringArray[1]
所以我这样做了:Convert.ToDecimal(newStringArray[1])
但结果我得到了这个值:547
这里有什么意义?
您的全球化设置认为点不是小数分隔符而是千位分隔符
您需要将有关此信息传递给Convert.ToDecimal。可以通过 CultureInfo.InvariantCulture 属性 来通知转换器在转换时使用正确的十进制符号。
string test = "0005.47";
decimal value = Convert.ToDecimal(test, CultureInfo.InvariantCulture);
如何转换如下所示的字符串:
0005.47
到十进制值5.47
.
这个值保存在 newStringArray[1]
所以我这样做了:Convert.ToDecimal(newStringArray[1])
但结果我得到了这个值:547
这里有什么意义?
您的全球化设置认为点不是小数分隔符而是千位分隔符
您需要将有关此信息传递给Convert.ToDecimal。可以通过 CultureInfo.InvariantCulture 属性 来通知转换器在转换时使用正确的十进制符号。
string test = "0005.47";
decimal value = Convert.ToDecimal(test, CultureInfo.InvariantCulture);