将字符串转换为双精度浮点数

5

我想将一个字符串转换成双精度浮点数,但是它没有返回我期望的结果...

double dbl;
Double.TryParse("20.0", out dbl);

那段代码返回的是 200.0(而不是 20.0)作为双精度值。有任何想法是为什么?
1个回答

22

你应该向该方法传递InvariantCulture

这背后的原因是你的区域设置可能将 . 作为分隔符而不是小数点。

double.TryParse("20.0", NumberStyles.Any, 
                CultureInfo.InvariantCulture, out x);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接