在荷兰语(比利时)中运行的Web服务器
double output;
double.TryParse(txtTextbox1.Text, out output);
这是在荷兰语环境中将文本转换为double的好方法吗?假设输入的是“ 24.45 ”,而不是“ 24.45 ”
最佳答案
如果要使用荷兰(比利时)数字格式:
double output;
double.TryParse("24,45", NumberStyles.Any, CultureInfo.GetCultureInfo("nl-BE"), out output);
或使用美国数字格式:
double output;
double.TryParse("24.45", NumberStyles.Any, CultureInfo.GetCultureInfo("en-US"), out output);
如果您尝试使用荷兰文化集解析“24.45”,则将返回“2445”,类似地,如果您尝试使用美国文化解析“24.45”,则将获得“2445”。如果您希望在使用错误的小数点后解析失败,请更改NumberStyles.Any以排除标记:
NumberStyles.AllowThousands
:double output;
if (double.TryParse("24.45", NumberStyles.Any ^ NumberStyles.AllowThousands, CultureInfo.GetCultureInfo("nl-BE"), out output))
如果整个应用程序都使用荷兰语,则应全局更改culturet-here's how to do it in WinForms和here's how to do it in ASP.NET。
使用全局设置的CultureInfo后,可以将以上代码更改为:
double output;
double.TryParse("24.45", NumberStyles.Any, CultureInfo.CurrentCulture, out output);
关于c# - double.TryParse在荷兰语中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/905754/