LINUX.ORG.RU

Кодировка в Sqlite QT4


0

0

Есть база Sqlite3 созданая на винде, пишу замену на QT4, но база в лиинуксе открывает текст русский в виде ��������. Как его раскодировать не пойму. Может кто поможет. Заранее спасибо!

Вроде бы решалась подобная проблема (только ерунду наоборот в венде показывало) установкой кодека для локали таким образом:

QTextCodec::setCodecForLocale(QTextCodec::codecForLocale());

awel
()
Ответ на: комментарий от awel

не так не получается, какую только я кодировку не пробывал возвращает "?????????". Самое что настораживает что пробывал ....toByteArray().Hex() выдает одинаковые быйты типа строку "3f3f3f3f3"

тут как я понимаю надо копать в торону подключения к базе, но где точно не знаю так как только начал узучать язык :(

kawsoft
() автор топика
Ответ на: комментарий от kawsoft

Вобщем, похоже, что вменяемым образом "раскодировать" не получится (сегодня ради интереса поэкспериментировал с имеющейся sqlite базой в koi8). Нечто подобное обсуждается здесь: http://forum.vingrad.ru/forum/topic-214786.html

База, судя по всему, в cp1251, а Qt'шный драйвер sqlite думает, что она в юникоде, и работает с ней соответствующим образом, и, видимо, сдампить базу и перекодировать ее целиком в utf будет проще, чем научить его думать иначе :)

awel
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.