C# не удается проанализировать NaN как двойное

В Windows PC в Японии эта строка C# выдает исключение формата:

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

Эта строка выполняется прекрасный на моем ПК в США.

Не знайте, где начать диагностировать этого. Какие-либо мысли?

Заранее спасибо, Jim

5
задан Jim C 2 July 2010 в 02:38
поделиться

2 ответа

Я понял, в чем проблема. Попробуйте использовать провайдер неизменного формата.

double d = double.Parse("NaN", CultureInfo.InvariantCulture);
8
ответ дан 14 December 2019 в 18:56
поделиться

Сначала вы должны определить двойное значение для «NaN». В любом случае, анализ строки нечислового формата вызовет System.FormatException, вы должны поймать его и установить значение типа double вручную.

double x;
string foo = "NaN";
try 
{
    x = double.Parse(foo);
}
catch
{
    x = 0.0;
}
-3
ответ дан 14 December 2019 в 18:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: