Russian Qt Forum
Ноябрь 24, 2024, 09:05 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Неправильная кодировка при выводе в QTableView  (Прочитано 5641 раз)
winneru
Гость
« : Март 30, 2011, 22:54 »

Добрый вечер. Понимаю, что тема уже достаточно избита, но сколько не читал похожих, понять так и не смог. У меня есть БД, созданная на MySQL 5.0. При этом при работе в ней самой проблем с кодировкой нет, и русский и английский работают нормально. Но при попытке вывести данные в QTableView вместо русских букв получаем иероглифы. Пожалуйста объясните где необходимо прописать кодировку, чтобы работало нормально. Заранее спасибо
Записан
CuteBunny
Гость
« Ответ #1 : Март 31, 2011, 03:57 »

Попробуйте с помощью QTextCodec в main.cpp выставить кодировку в зависимости от кодировки бд.

Я всегда у проекта выставляю кодировку utf-8, все исходники тоже в utf-8 ну и с QTextCodec ставлю кодировку для строк и локали.
Записан
winneru
Гость
« Ответ #2 : Март 31, 2011, 07:23 »

просто проблема в том что если я в проекте ставлю utf8, то у меня весь интерфейс иероглифами получается.а если в бд пишу "set names utf8" то и сама бд перестает русский язык понимать.
Записан
Mikhail
Программист
*****
Offline Offline

Сообщений: 587


Просмотр профиля
« Ответ #3 : Март 31, 2011, 20:34 »

А какая у вас кодировка для клиентов в MySql   ?
Вот такую и ставьте в "set names ..."
Записан
aliks-os
Гость
« Ответ #4 : Март 31, 2011, 21:35 »

Смысл в том, чтобы везде использовать одинаковую кодировку. На этот же косяк я сам напарывался в начале. Т.е. кодировка должна быть одинаковой:
1. В БД (use names...)
2. Сами cpp файлы должны быть сохранены в нужной кодировке
3. Ну и использовать QTextCodex
Записан
winneru
Гость
« Ответ #5 : Март 31, 2011, 23:58 »

А как мне узнать в какой кодировке у меня *cpp файлы созданы?
Записан
serg_hd
Хакер
*****
Offline Offline

Сообщений: 668



Просмотр профиля
« Ответ #6 : Апрель 01, 2011, 00:01 »

А как мне узнать в какой кодировке у меня *cpp файлы созданы?
с помощью той IDE, в которой их создавал например
Записан

kubuntu/Win7/x64/NetBeans
aliks-os
Гость
« Ответ #7 : Апрель 01, 2011, 19:00 »

Если работаете в Qt Creator, тогда см. в меню "Правка-Выбрать кодировку"
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.081 секунд. Запросов: 23.