C# 将字符串转换为双精度字符串
我正在尝试将字符串转换为双精度值,但它没有返回我所期望的结果C# 将字符串转换为双精度字符串,c#,.net,string,double,globalization,C#,.net,String,Double,Globalization,我正在尝试将字符串转换为双精度值,但它没有返回我所期望的结果 double dbl; Double.TryParse("20.0", out dbl); 这段代码返回200.0(而不是20.0)作为双精度值。知道为什么吗?您应该将不变量文化传递给该方法 这背后的原因是您的区域设置可能将设置为分隔符,而不是小数点 double.TryParse("20.0", NumberStyles.Any, CultureInfo.InvariantCulture, out
double dbl;
Double.TryParse("20.0", out dbl);
这段代码返回200.0(而不是20.0)作为双精度值。知道为什么吗?您应该将
不变量文化
传递给该方法
这背后的原因是您的区域设置可能将
设置为分隔符,而不是小数点
double.TryParse("20.0", NumberStyles.Any,
CultureInfo.InvariantCulture, out x);