crossplatform.ru

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

> проблема кодировок
eldar85
  опции профиля:
сообщение 27.9.2010, 12:35
Сообщение #1


программист
***

Группа: Участник
Сообщений: 283
Регистрация: 2.1.2010
Из: Москва
Пользователь №: 1348

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




Репутация:   0  


Такая проблемка, хочу чтобы поддерживались две кодировки 1251 и utf-8 в QTextEdite. Проект написан на utf-8 а в QString стоит кодировка 1251 это вызвано нуждами программы, так вот если я вывожу файл который сохранен в utf-8 то кирилица вся конечно же кашей и в начале этот долбаный знак "п»ї" означающий что файл в utf-8 .
Хотелось сделать чтобы прога понимала какой файл в нее вставляют и выводила нормальную кодировку.
написал такой код:
QFile file( "c:/....txt" );
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
    {
        QMessageBox::about(this, tr( "Error" ),
                           tr( "<FONT color=red>Не возможно открыть файл!</FONT>" ));
    }
    else
    {

        QString tmp;
        tmp  = file.readAll();

        if( tmp.contains( "п»ї" ) )        //проблема тут, п»ї не видет и выводит все как 1251
            textForEdit->setText( tmp.toUtf8()  );
        else
            textForEdit->setText( tmp  );     //всегда срабатывает эта строка


        file.close();
}


но этот знак "п»ї" не видет прога так как проект написан в utf-8. Как же быть?

Сообщение отредактировал eldar85 - 27.9.2010, 15:06
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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


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




RSS Текстовая версия Сейчас: 1.12.2024, 12:51