Преобразование строки в double
-
23-08-2019 - |
Вопрос
Я пытаюсь преобразовать строку в двойное значение, но это не возвращает мне того, что я ожидаю...
double dbl;
Double.TryParse("20.0", out dbl);
Этот фрагмент кода возвращает 200.0 (вместо 20.0) в виде двойного значения.Есть идеи, почему?
Решение
Вы должны пройти InvariantCulture
к методу.
Причина этого заключается в том, что ваши региональные настройки, вероятно, устанавливают .
как символ разделителя, а не десятичная точка.
double.TryParse("20.0", NumberStyles.Any,
CultureInfo.InvariantCulture, out x);
Не связан с StackOverflow