C#在字符串中将字符串转换为double

在我的语言环境中,小数点分隔符是’,’。

但是,我仍然想编写一个C#应用程序,该应用程序使用使用’。’的数字。 作为小数分隔符。

string b = "0,5"; double db = double.Parse(b); // gives 0.5 string a = "0.5"; double da = double.Parse(a); // gives 5, however i would like to get 0.5 

你需要指定文化作为double.Parse的第二个参数,例如

 double da = double.Parse(a, CultureInfo.InvariantCulture); 

几乎所有的格式化/解析方法都有重载IFormatProvider ,而IFormatProvider最常用的实现是CultureInfo