| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > Импорт в БД из XML файла. |
| Автор: plica98 27.3.2012, 11:40 | ||
| Уважаемые Qt-шники, нужна помощь начинающему. В xml -файле кодировка ISO-8859-1. Разбираю xml файл пишу в БД и вывожу на консоль. Как мне перекодировать при записи в БД PostgreeSql, чтобы на консоль выводились русский текст ? Консоль UTF8. Заранее благодарю за помощь.
|
| Автор: ashain 28.3.2012, 22:58 |
| QApplication::tr() - попробуйте использовать Либо покажите как xml разбераете |
| Автор: plica98 29.3.2012, 11:49 | ||
| XML -файл: <?xml version="1.0" encoding="ISO-8859-1"?> <opml version="1.0"> <user>0 <name>Петров</name> </user> <user>1 <name>Иванов</name> </user> </opml>
В БД записи вставляются нормально, только при просмотре через psql выводятся 'тараканы'. |
| Автор: math64 29.3.2012, 12:26 |
| В ISO-8859-1 русских букв нет. Поправьте кодировку в заголовке xml на правильную. |
| Автор: plica98 29.3.2012, 12:37 |
| >>>В ISO-8859-1 русских букв нет. Поправьте кодировку в >>>заголовке xml на правильную. В исходном файле была именно такая кодировка. Но я перепробовал разные. Результат тот же. |
| Автор: plica98 29.3.2012, 13:24 |
| Уважаемые, коллеги. Вопрос решил таким способом: В main() добавил QTextCodec* codec = QTextCodec::codecForName("UTF8"); QTextCodec::setCodecForCStrings(codec); Открыл XML-файл редактором gedit и сохранил его в кодировке KOI8-R. Но разобраться с кодировкой хотелось бы до конца. |
| Автор: plica98 29.3.2012, 14:18 |
| Уважаемые Qt - шники, всем большое спасибо за помощь. Заголовок исходного XML-файла: <?xml version="1.0" encoding="ISO-8859-1"?> <opml version="1.0"> ............... ............... Я менял кодировку именно в заголовке, а сам файл оставался тем же. В Винде открыл файл редактором AkelPad. Он показал кодировку 1251(ANSI - кириллица). PostgreeSql (на Linux -овой машине ) показывает кодировку UTF8. |