关于c#:将字符串转换为double,


Convert string to double,

本问题已经有最佳答案,请猛点这里访问。

我有一个包含4个元素的字符串数组。看起来像这样。

enter image description here

但是,当尝试这样做时:

1
2
3
Vector newVector = new Vector(
(float)Convert.ToDouble(words[1]),
(float)Convert.ToDouble(words[2]));

我得到以下错误:

'Input string was not in a correct format.'

这是因为它的值使用了".",但是如果我手动将数组改为使用","它就可以工作了。如何最容易地将所有"."替换为","。


使用

1
2
//(float)Convert.ToDouble(words[1]),
  (float)Convert.ToDouble(words[1], CultureInfo.InvariantCulture),

试试这个…

1
2
3
Vector newVector = new Vector(
(float)Convert.ToDouble(words[1], CultureInfo.GetCultureInfo("en-US").NumberFormat),
(float)Convert.ToDouble(words[2], CultureInfo.GetCultureInfo("en-US").NumberFormat));