Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
95 / 95 / 15
Регистрация: 11.11.2010
Сообщений: 424
1

Перевод числа из научного формата в Double

09.12.2011, 23:51. Показов 3615. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Собственно всё написано в названии темы!
Благодарю за подсказки и помощь!
Пример научного формата:2.000000e+000
Собственно не прошу писать парсер. Просто интересно есть ли методы, описанные в c# которые позволяют сделать это?

Добавлено через 21 минуту
Забыл сказать. Число в экспон-ой форме в string. Надо в double.

Добавлено через 12 минут
C#
1
float x = float.Parse("1.100000e+002", NumberStyles.Float);
ругается.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.12.2011, 23:51
Ответы с готовыми решениями:

Перевод научного числа в вещественное
Прошу помочь программно перевести число экспоненциального формата. В программе приходит ответ на...

Перевод данных из формата Double в Real
программа считает в real , потом переводит файлы в double для матлаба , а теперь не могу сделать...

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

Перевод числа из BCD формата в Десятичный
Доброго времени суток форумчане! Подскажите, как переменную в BCD формате представить в...

5
Эксперт .NET
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
10.12.2011, 10:33 2
C#
1
float x = float.Parse("1.100000E+002", NumberStyles.Float);
Экспоненту заглавной сделайте.
2
95 / 95 / 15
Регистрация: 11.11.2010
Сообщений: 424
10.12.2011, 11:03  [ТС] 3
Пробовал, не помогает.
0
Эксперт .NET
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
10.12.2011, 11:29 4
Возможно, вы встретились с проблемой парса чисел в разных культурах.
Попробуйте так:
C#
1
float x = float.Parse("1.100000E+002", NumberStyles.Float, CultureInfo.InvariantCulture);
1
95 / 95 / 15
Регистрация: 11.11.2010
Сообщений: 424
10.12.2011, 11:32  [ТС] 5
Помогло, благодарствую!
0
Эксперт .NET
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
10.12.2011, 11:39 6
На всякий случай, если вдруг кому интересно: если у вас в региональных настройках разделителем десятичной части стоит запятая, то это будет учитываться при парсе строки в число.
У вас там точка, потому и выпрыгивало исключение.
Последний аргумент - именно для того, чтобы указать парсеру на игнорирование региональных настроек.
1
10.12.2011, 11:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.12.2011, 11:39
Помогаю со студенческими работами здесь

Перевод числа из экспоненциального формата в вещественный
Всем привет! Пишу на C++ Builder XE. В проекте используется база данных MS Access. В базе...

Перевод числа из двоичного формата в двоично-десятичный
Подскажите как переводить числа из одного формата в другой.

Перевод числа из упакованного BCD-формата в ASCII-формат
Есть программа, которая считает разницу 873451-548197 используя ASCII формат, потом результат...

Считывание бинарных данных формата double
Доброго времени суток, уважаемые форумчане. Интересует вопрос, как в Python 3 осуществить чтение из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru