Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > кодировка QSqtring -> TCHAR*


Автор: wowka19 24.5.2013, 11:32
Использую для работы Qt и LibXL для вывода данных в EXCEL формат. Но имеются проблемы с кодировкой с кириллицей.

подробнее:
В метод writeStr(int row, int col, const TCHAR * value) нужно передать значение QString, содержащий знаки кириллицы.
Как это сделать без проблем с кодировкой?
делал вот так: QSTR.toStdWString().c_str() - ошибка компиляции о несоответствии параметров прототипу функции writeStr()
сделал так:      QSTR.toStdString().c_str()    - вопросики вместо кириллицы

Автор: Guinness 24.5.2013, 11:37
http://qt-project.org/doc/qt-4.8/qtextcodec.html
У Вас строка может быть не в win-1251. Поэтому, нужно её преобразовать в кириллицу, а уже потом к TCHAR*.

Автор: wowka19 24.5.2013, 11:57
Все решилось просто: #define _UNICODE и THCAR из char превращается wchar_t и QSTR.toStdWString().c_str() работает на ура!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)