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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: кодировка ibm 866  (Прочитано 5000 раз)
Firefox
Гость
« : Декабрь 11, 2013, 11:11 »

Здравствуйте. у меня возникла проблема с кодировкой IBM 866.получаю по сети данные в этой кодировку. делаю следующее преобразование
Код:
QTextCodec *codec= QTextCodec::codecForName("IBM 866");
  QString str,str2;
  str2=codec->toUnicode(arr);// arr - полученные данные в QByteArray
  str2.toUpper();
  for(int j=i;j<arr.size()-2;j++)
   {
      str.append(str2.at(j));
   }
   ui->TEatgs_pole->setText(ui->TEatgs_pole->toPlainText()+str);//QTextEdit

на экран выводятся русские буквы, только почему-то заглавные все. А когда я пытаюсь считать информацию из этого окна и вывести количеств символов в строке то получаю нелепые значения
считаю буквы в текст эдите так:
Код:
QString str;
    str=ui->TEatgs_pole->toPlainText();
    ui->Eatgs_znakov->setText(QString().setNum(str.size()));// QLineEdit
если я в это же окно ввожу текст с клавиатуры, то количество символов выводится верно.

Работаю в Windows. в майне прописан кодек UTF-8.
« Последнее редактирование: Декабрь 11, 2013, 11:14 от Firefox » Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #1 : Декабрь 11, 2013, 11:34 »

Цитировать
только почему-то заглавные все
Код
C++ (Qt)
str2.toUpper();
Цитировать
А когда я пытаюсь считать информацию из этого окна и вывести количеств символов в строке то получаю нелепые значения
считаю буквы в текст эдите так:
попробуй
Код
C++ (Qt)
ui->Eatgs_znakov->setText(QString::number(str.size()));
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Firefox
Гость
« Ответ #2 : Декабрь 11, 2013, 12:22 »

спасибо Веселый, но к сожалению чего-то не помогло
« Последнее редактирование: Декабрь 11, 2013, 12:34 от Firefox » Записан
Firefox
Гость
« Ответ #3 : Декабрь 11, 2013, 12:38 »

простите проблема оказывается была не в кодировке. после букв в пакете было ещё что-то. в текст эдите не было этого видно, а размер получался брался верно. так что все уже хорошо
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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