![]() |
|
![]() ![]() ![]() |
|
svlary |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 207 Регистрация: 8.9.2009 Репутация: нет Всего: 4 |
Пргорамма работает на инструментальном компьютере, где локаль настроена на UTF-8.
Она готовит структуры данных, которые записываются в файл. Некоторые поля этой структуры - текстовые. Файлы переносятся на целевой компьютер, локаль которого настроена на KOI8-R. В связи с этим вопрос : Как надо организоват перекодировку текстовых полей структуры данных, перед записью в файл ? При этом,
|
|||
|
||||
Фантом |
|
|||
![]() Вы это прекратите! ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1516 Регистрация: 23.3.2008 Репутация: нет Всего: 49 |
А зачем? Не проще ли уже готовые файлы обработать каким-нибуть iconv'ом, и не изобретать велосипед?
|
|||
|
||||
svlary |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 207 Регистрация: 8.9.2009 Репутация: нет Всего: 4 |
К сожалению - не проще... Дело в том, что файл сам по себе - НЕ текстовый. Там ЧАСТЬ полей - текстовые. Поэтому натравливать на него iconv - довольно рисковано. Я пытался вызывать iconv в программе, но запутался в конвертации QString в char* - получается. что для конвертации кодирвки в iconv строки UTF-8 уже должны быть конверированы в однобайтовые char*... Какой-то замкнутый круг получается ! |
|||
|
||||
bsa |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 24 Всего: 196 |
svlary, при чтении файла используй статический метод QString::fromUtf8(const char *);
Добавлено через 3 минуты и 44 секунды
|
||||
|
|||||
svlary |
|
||||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 207 Регистрация: 8.9.2009 Репутация: нет Всего: 4 |
Наверное, я недостаточно четко изложил задачу, но
Если я на экране ввожу в поле редактирования строку "ABCАБВ", то в файл пишется какая-то полная ахинея... В 16-ричном виде :
Такое впечатление, что это - СИМВОЛЬНАЯ запись 16-ричного представления какой-то строки цифр... Что за бред ?! |
||||||
|
|||||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 24 Всего: 196 |
http://doc.qt.nokia.com/4.7/qtextcodec.html#codecForName
|
|||
|
||||
svlary |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 207 Регистрация: 8.9.2009 Репутация: нет Всего: 4 |
Большое спасибо за точный и ясный ответ! Долго не возвращался к этой проблеме - была срочная работа, а сегодня проверил - все сразу заработало !
![]() |
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 24 Всего: 196 |
svlary, кстати, QString данные хранит не в кодировке UTF-8.
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |