5

在日本的 Windows PC 上,这行 C# 会引发格式异常:

double d = double.Parse("NaN");

这条线在我的美国电脑上运行良好

不知道从哪里开始解决这个问题。有什么想法吗?

在此先感谢,吉姆

4

2 回答 2

7

我知道问题出在哪里。尝试使用不变格式提供程序。

double d = double.Parse("NaN", CultureInfo.InvariantCulture);
于 2010-07-02T02:25:58.760 回答
-3

首先,您应该确定“NaN”的双精度值。无论如何,解析非数字格式字符串会导致 System.FormatException,你应该抓住它并手动设置双精度值。

double x;
string foo = "NaN";
try 
{
    x = double.Parse(foo);
}
catch
{
    x = 0.0;
}
于 2010-07-02T02:18:28.027 回答