crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> SQLITE CP1251, как корректно читать в QT4?
rotor
  опции профиля:
сообщение 23.9.2010, 11:36
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 2
Регистрация: 23.9.2010
Пользователь №: 2060

Спасибо сказали: 0 раз(а)




Репутация:   0  


Имеется БД SQLITE в которой имеются записи кирилицей в кодировке CP1251, при попытке чтения данных из БД возвращается кирилическая строка в виде "??????????? ???? ".
Как с этим бороться?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 23.9.2010, 13:10
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


например: setCodecForCString для кодировки БД
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
rotor
  опции профиля:
сообщение 24.9.2010, 13:32
Сообщение #3


Новичок


Группа: Новичок
Сообщений: 2
Регистрация: 23.9.2010
Пользователь №: 2060

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(Litkevich Yuriy @ 23.9.2010, 9:10) *
например: setCodecForCString для кодировки БД

codecForTr(), setCodecForCStrings, setCodecForLocale() пробовал это не помагает.


QByteArray encodedString = query.value(Name).toByteArray;

QTextCodec *codec = QTextCodec::codecForName("cp1251");
QString string = codec->toUnicode(encodedString);

на MySQL это работает нормально, а вот в SQLITE не дает результата.

query - возвращает далеко не то что было в базе(на уровне байтов).
Да собственно как и запись в БД на SQLITE в коде 1251 у меня так и не получилось, хотя очень сильно нужно.
А вот с MySql проблем нет, что посылаеш то и ложится в базу.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 24.11.2024, 21:23