[РЕШЕНО] QDomElement как поменять содержимое/текст элемента, обратная функция к text(); |
Здравствуйте, гость ( Вход | Регистрация )
[РЕШЕНО] QDomElement как поменять содержимое/текст элемента, обратная функция к text(); |
zloyGamer |
14.11.2009, 20:24
Сообщение
#1
|
Студент Группа: Участник Сообщений: 22 Регистрация: 18.7.2009 Пользователь №: 917 Спасибо сказали: 0 раз(а) Репутация: 0 |
как поправить один элемент если он мне известен, тоесть я уже нашел нужный элемент QDomNode и получил text() - этого элемента,
и нужно сохранить xml'ку поменяв тока текст этого элемента, для атрибутов в таких случаях есть setAttribute, для моего случая логично былоб подумать про setNodeValue - но он задает вообще непонятно что.. но не text как это можно сделать? |
|
|
Litkevich Yuriy |
14.11.2009, 20:43
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
zloyGamer |
15.11.2009, 3:02
Сообщение
#3
|
Студент Группа: Участник Сообщений: 22 Регистрация: 18.7.2009 Пользователь №: 917 Спасибо сказали: 0 раз(а) Репутация: 0 |
спасибо, нашел, на мой взгляд оказалось немного неожиданно и нелогично - для того чтоб задать текст элемента надо выполнить setNodeValue для его дочернего элемента!, оп сюрприз, может под вечер чего и недогоняю.., но вроде работает тока щас с русскими символами при сохранении пробелема,
например слово "привет" преобразуется в "пїЅпїЅпїЅпїЅпїЅпїЅ", похоже что то в какойто момент конвертится в юникод, затем ещё во чтото и содержимое безвозвратно теряется.., как поправить кодировки для этих ситуаций, чтоб лишний раз не преобразовывалось? |
|
|
Litkevich Yuriy |
15.11.2009, 7:19
Сообщение
#4
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
какая кодировка должна быть в целевом файле (по идее она указывается в самом файле)
|
|
|
zloyGamer |
15.11.2009, 10:41
Сообщение
#5
|
Студент Группа: Участник Сообщений: 22 Регистрация: 18.7.2009 Пользователь №: 917 Спасибо сказали: 0 раз(а) Репутация: 0 |
да так и есть, в самом файле прописано: <?xml version='1.0' encoding='UTF-8'?>
и читаются русские символы нормально, а записывается уже в неверной кодировке.., прост я уже потом заметил что у меня при записи в файл написано file.write( domDoc.toByteArray() ); а если конвертнуть строку функцией toAscii или toLocal8Bit то все ок! спасибо Litkevich Yuriy тема закрыта ps: чет невижу где можно пометить "решено" |
|
|
Litkevich Yuriy |
15.11.2009, 12:25
Сообщение
#6
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Текстовая версия | Сейчас: 15.1.2025, 17:42 |