在日本的Windows PC上,这行C#抛出了一个格式异常:
double d = double.Parse("NaN");
这条线在美国的电脑上执行得很好。
不知道从哪里开始排除故障。有什么想法吗?
提前致谢, 吉姆
答案 0 :(得分:8)
我明白了问题所在。尝试使用不变格式提供程序。
double d = double.Parse("NaN", CultureInfo.InvariantCulture);
答案 1 :(得分:-3)
首先,您应该确定“NaN”的双精度值。无论如何,解析非数字格式字符串将导致System.FormatException,您应该捕获它并手动设置double值。
double x;
string foo = "NaN";
try
{
x = double.Parse(foo);
}
catch
{
x = 0.0;
}