Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: [РЕШЕНО] QDomElement как поменять содержимое/текст элемента
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Обработка XML
zloyGamer
как поправить один элемент если он мне известен, тоесть я уже нашел нужный элемент QDomNode и получил text() - этого элемента,
и нужно сохранить xml'ку поменяв тока текст этого элемента, для атрибутов в таких случаях есть setAttribute,
для моего случая логично былоб подумать про setNodeValue - но он задает вообще непонятно что.. но не text

как это можно сделать?
Litkevich Yuriy
Цитата(zloyGamer @ 14.11.2009, 23:24) *
и получил text() - этого элемента,
если мне не изменяет память, это рекурсивная функция, т.е. она возвращает текст и вложенных узлов, поэтому у неё нет обратного аналога (setText). Смотри, что-нибудь типа Value или Data
zloyGamer
спасибо, нашел, на мой взгляд оказалось немного неожиданно и нелогично - для того чтоб задать текст элемента надо выполнить setNodeValue для его дочернего элемента!, оп сюрприз, может под вечер чего и недогоняю.., но вроде работает тока щас с русскими символами при сохранении пробелема,
например слово "привет" преобразуется в "пїЅпїЅпїЅпїЅпїЅпїЅ", похоже что то в какойто момент конвертится в юникод, затем ещё во чтото и содержимое безвозвратно теряется..,
как поправить кодировки для этих ситуаций, чтоб лишний раз не преобразовывалось?
Litkevich Yuriy
какая кодировка должна быть в целевом файле (по идее она указывается в самом файле)
zloyGamer
да так и есть, в самом файле прописано: <?xml version='1.0' encoding='UTF-8'?>
и читаются русские символы нормально, а записывается уже в неверной кодировке..,
прост я уже потом заметил что у меня при записи в файл написано file.write( domDoc.toByteArray() );
а если конвертнуть строку функцией toAscii или toLocal8Bit то все ок!
спасибо Litkevich Yuriy
тема закрыта
ps: чет невижу где можно пометить "решено"
Litkevich Yuriy
Цитата(zloyGamer @ 15.11.2009, 13:41) *
ps: чет невижу где можно пометить "решено"
после 20 сообщений, сможешь редактировать свои сообщения (в том числе первое с заголовком)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.