法国区域设置数字格式问题

时间:2011-03-09 04:08:50

标签: .net

我有一个.Net应用程序,其中我输入了一些值,当我的区域设置为英语时输入0.21,但当我将其更改为法语设置时,数字转换为0,21,当我读取并将其转换为双我得到这个值为21而不是0.21

任何帮助将不胜感激

代码 dblWork = Convert.ToDouble(txtInput.Text)

1 个答案:

答案 0 :(得分:1)

您似乎正在将数字转换为字符串。在这种情况下,应使用invariant culture,以便当前文化不会影响输出格式和数字的解析。

using System.Globalization;

// ...

var number = 0.23f;
var str = number.ToString(CultureInfo.InvariantCulture);
var number2 = float.Parse(str, CultureInfo.InvariantCulture);