crossplatform.ru

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

Алексей1153
  опции профиля:
сообщение 29.12.2012, 15:58
Сообщение #1


фрилансер
******

Группа: Участник
Сообщений: 2943
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

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




Репутация:   34  


не удаётся сконвертировать кодировку - что я не так делаю ?

код такой

char m_descr[52];

//m_descr грузится из файла
//...

//конвертируем
QString str;
QTextCodec::ConverterState state;
QTextCodec *myCod = QTextCodec::codecForName("IBM 866");
if (myCod)
{
    str=myCod->toUnicode(m_descr,sizeof(m_descr),0);
}


результат в дебаге - на скрине. Там же приложено радостное окно от ворда, который понимает как "DOS" (под ним подразумевается IBM 866, согласно викии)
Прикрепленное изображение
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов (1 - 2)
Litkevich Yuriy
  опции профиля:
сообщение 29.12.2012, 16:54
Сообщение #2


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

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

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




Репутация:   94  


Вроде всё верно
П.С.
яб из файла без промежуточных массивов грузил, если файл текстовый.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 29.12.2012, 17:32
Сообщение #3


фрилансер
******

Группа: Участник
Сообщений: 2943
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

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




Репутация:   34  


хм, вот так проканало

    {
        uint8_t* pFileBeg=file.map(0,file.size());
        if(!pFileBeg)return;

        file.close();

        QString str;
        QTextCodec::ConverterState state;
        QTextCodec *myCod = QTextCodec::codecForName("IBM 866");
        if (myCod)
        {
            str=myCod->toUnicode((const char*)pFileBeg,52,0);
        }

        int iii=1;

    }


загадка ) Попробую разобраться

всё нормально, мой косячок был

Сообщение отредактировал Алексей1153 - 29.12.2012, 17:33
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 23.6.2025, 13:03