Входная строка была не в правильном формате при разборе в многопоточности - PullRequest
1 голос
/ 01 января 2012

Кто-нибудь может объяснить это: Screen

Как можно сгенерировать исключение при разборе "55.01"? Я использую многопоточность.

- edit-- но ... иногда это работает enter image description here

Это действительно меня огорчает; ( Я использую .NET 4.0 и VS2010.

- редактировать 2 ---

Хорошо, я немного продвинулась. Когда я не использую многопоточность, все работает отлично. Но когда я использую многопоточность (возможно), один из потоков создает исключение FormatException, которое показано на рисунке.

1 Ответ

5 голосов
/ 01 января 2012

Возможно, система настроена для некоторой культуры, которая ожидает запятую в качестве десятичной точки.

С http://msdn.microsoft.com/en-us/library/fd84bdyt.aspx:

Параметр s интерпретируется с использованием информации о форматировании вобъект NumberFormatInfo, который инициализируется для текущей культуры потоков.Для получения дополнительной информации см. CurrentInfo.Чтобы проанализировать строку с использованием информации о форматировании какой-либо другой культуры, вызовите метод Double.Parse (String, IFormatProvider) или Double.Parse (String, NumberStyles, IFormatProvider).

...