Название: QDomDocument в текст Отправлено: 17dufa от Октябрь 05, 2007, 10:38 Здраствуйте,
по поиску не нашел, решил создать новую тему Как перевести QDomDocument в текст заданной кодировки (нужен Utf-8) c xml заголовком? Сейчас делаю так: Код: QDomDocument doc; Код: QDomDocument doc; Название: Re: QDomDocument в текст Отправлено: alexis от Октябрь 05, 2007, 11:00 Так как QDomDocument наследник QDomNode, то можно вызвать метод save( QTextStream & str, int indent )
курим мануалы Название: Re: QDomDocument в текст Отправлено: pastor от Октябрь 05, 2007, 12:30 createProcessingInstruction тебе в помощь :)
Код: QDomDocument doc; Название: Re: QDomDocument в текст Отправлено: 17dufa от Октябрь 07, 2007, 18:39 Чем createProcessingInstruction лучше варианта QString str = QString::fromUtf16(L"<?.....") + doc.toString(); ?
Название: Re: QDomDocument в текст Отправлено: pastor от Октябрь 07, 2007, 19:47 имхо, это костыль, а не решение. Чем ваш вариант лучше?
createProcessingInstruction гарантирует, что в вашем xml-файле будет содержиться заголовок Советую пересмотреть свое мнение Название: Re: QDomDocument в текст Отправлено: 17dufa от Октябрь 08, 2007, 11:13 createProcessingInstruction такой же костыль;)
2 костыля, по-моему равнозначных, мой мне кажется понятней вот и все. По хорошему должен быть вариант типа такого: QByteArray QDomDocument::toString( Encoding ); Хорошо, что мне надо Utf-8, а если бы был нужен Windows-1251 или еще какая фигня, надо было б переставлять словари и использовать QString::toLocal8Bit()? В общем мое мнение: нормального решения этой проблемы не нашлось, есть как минимум 2 костыля, какой выбрать - дело каждого в отдельности, хотя если все будут использовать один метод, это послужит некой стандартизации костылей и это, наверно, хорошо, но в принципе все равно ужОс. Название: Re: QDomDocument в текст Отправлено: pastor от Октябрь 08, 2007, 17:20 Кодировка документа устанавливаеться в заголовке. Я привел код как его установить. Такого метода установки кодировки для xml я не видел в своей практике
|