QDomDocument::toString() - форматирование double/float |
Здравствуйте, гость ( Вход | Регистрация )
QDomDocument::toString() - форматирование double/float |
ltise |
3.9.2013, 21:19
Сообщение
#1
|
Студент Группа: Участник Сообщений: 65 Регистрация: 17.4.2010 Пользователь №: 1636 Спасибо сказали: 0 раз(а) Репутация: 0 |
Всем привет!
может кто в курсе - необходимо чтобы при записи в текстовый файл (QDomDocument::toString()) числа double выводились с заданной точностью: сейчас получается: <node p_x="126.390969122906" p_y="17.000000000001" ..../> надо: <node p_x="126.39" p_y="17" ..../> как прикрутить форматирование, если это возможно ? или может надо по другому как-то писать текст ? Заранее спасибо |
|
|
ilyabvt |
4.9.2013, 17:03
Сообщение
#2
|
Активный участник Группа: Участник Сообщений: 297 Регистрация: 23.6.2011 Пользователь №: 2765 Спасибо сказали: 45 раз(а) Репутация: 3 |
//Вот так можно попробовать отформатировать (2 - число знаков после запятой).
Сообщение отредактировал ilyabvt - 4.9.2013, 17:03 |
|
|
ltise |
4.9.2013, 20:36
Сообщение
#3
|
Студент Группа: Участник Сообщений: 65 Регистрация: 17.4.2010 Пользователь №: 1636 Спасибо сказали: 0 раз(а) Репутация: 0 |
//Вот так можно попробовать отформатировать (2 - число знаков после запятой).
Вопрос том как задать правило для всего текста..вот такой вариант должен был-бы по идее работать, но не работает к сожалению:
|
|
|
Алексей1153 |
5.9.2013, 7:02
Сообщение
#4
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
ltise, никак не задать. Форматируй строки и записывай в виде строк
|
|
|
ilyabvt |
5.9.2013, 17:19
Сообщение
#5
|
Активный участник Группа: Участник Сообщений: 297 Регистрация: 23.6.2011 Пользователь №: 2765 Спасибо сказали: 45 раз(а) Репутация: 3 |
Можно написать парсер обрабатывающий string, находящий все числа и обрезающий разряды после двух знаков после запятой (точки). |
|
|
Yuriy |
13.10.2013, 13:25
Сообщение
#6
|
Новичок Группа: Новичок Сообщений: 7 Регистрация: 8.10.2013 Пользователь №: 3949 Спасибо сказали: 1 раз(а) Репутация: 0 |
Всем привет! может кто в курсе - необходимо чтобы при записи в текстовый файл (QDomDocument::toString()) числа double выводились с заданной точностью: сейчас получается: <node p_x="126.390969122906" p_y="17.000000000001" ..../> надо: <node p_x="126.39" p_y="17" ..../> как прикрутить форматирование, если это возможно ? или может надо по другому как-то писать текст ? Заранее спасибо Вопрос стоит не корректно. XML - это текстовый документ. И, соответственно, нет "внутри него" никаких int, float и т.п. И никаких преобразований типов при записи в строку не происходит. Стоит ли значение атрибута "1.222" или "1A2Y" - документу все равно, как Вы ее туда поместили, так обратно и получите. Итого: Вам нужно при формировании документа преобразовывать число в строку нужного формата и потом эту строку устанавливать в документ. Или, если Вы уже получаете готовый документ, то нужные поля, атрибуты и т.д. - прочесть, преобразовать, заново сохранить. |
|
|
Текстовая версия | Сейчас: 28.11.2024, 1:12 |