Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
482 / 270 / 57
Регистрация: 08.10.2015
Сообщений: 1,158
1

Десятичный системный разделитель

08.10.2015, 14:15. Показов 2009. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте товарищи (господа) специалисты!
Прошу помощи в решении вопроса любителю.
Есть программа на Билдер 5. Она содержит математические выражения, в которых присутствуют десятичные числа, принимает числа вводимые пользователем, числа из файлов, от других программ и "железа". Пишет в файл и отсылает
данные в другие программы и "железо".
Все это работает в системе с десятичным разделителем " . ". Возникла необходимость работы в системе с десятичным разделителем " , ".
Что делать?
Можно, конечно, при запуске программы запомнить системный разделитель, установить " . ", а при выходе восстановить системный. Но этот вариант не годится, т.к. у пользователя могут работать его программы и они начнут глючить или он не сможет с ними общаться пока не закроет мою. Заменить все числа в формулах на константы и проверять их и вводимые числа и преобразовывать в соответствии с системным разделителем - можно, хотя и несколько коряво. Но, что делать с внешними данными? Поток может быть до нескольких десятков Мбайт/с, и проверка с заменой просто не пройдет по быстродействию.
Помогите!
САлександр.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.10.2015, 14:15
Ответы с готовыми решениями:

Десятичный разделитель и INI-файлы
- Здравствуйте завсегдатаи. С прошедшими и наступающими Вас праздниками! Помогите пожалуйста ...

Embarcadero. Как настроить десятичный разделитель
Программа стартует, инициализируются переменные, но при запуске расчета вылетает из-за division by...

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

Замена '.' или ',' на системный разделитель при вводе в текстовый компонент
Делаю новый компонент на базе TLabeledEdit, добавляю некоторые функции. Например разрешаю вводить...

4
Native x86
Эксперт Hardware
5514 / 3273 / 934
Регистрация: 13.02.2013
Сообщений: 10,424
08.10.2015, 14:18 2
DecimalSeparator
1
482 / 270 / 57
Регистрация: 08.10.2015
Сообщений: 1,158
09.10.2015, 15:59  [ТС] 3
Спасибо quwy.
Я его (DecimalSeparator) и использовал, но думал что он глобальный и глюки во взаимодействии программ приписывал ему, при этом я запоминал системный и при закрытии программы восстанавливал его. После Вашего совета присмотрелся внимательнее и обнаружил, что он локальный!
Значит:
1. запоминать и восстанавливать - это лишнее,
2. он не является причиной глюков.
Прочесал свой код и нашел причину.
Еще раз спасибо.
0
Почетный модератор
Эксперт С++
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
12.10.2015, 13:00 4
САлександр, ну может тогда в том месте, где возникла необходимость работы с запятой проверять весь трафик из этого места и заменять разделитель в нем на точку?
0
482 / 270 / 57
Регистрация: 08.10.2015
Сообщений: 1,158
12.10.2015, 14:23  [ТС] 5
Вопрос решен. Всем спасибо.
0
12.10.2015, 14:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.10.2015, 14:23
Помогаю со студенческими работами здесь

Объединить байты и преобразовать в десятичный вид
Как объединить два байта и преобразовать их в десятичный вид? делаю так ,но не выходит #define...

Разделитель
Здравствуйте! Столкнулся с проблемой... В Edit вводится текст в формате IP:PORT (192.168.1.1:8080)...

Как сменить системные параметры: десятичный разделитель и разделитель в дате?
Как сменить системные параметры: 'десятичный разделитель' и 'разделитель в дате'? Подозреваю,...

Десятичный разделитель
Скажите, у андроида десятичный разделитель всегда точка? Если нет, то как получить его значение?...


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

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