crossplatform.ru

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

MishaUA
  опции профиля:
сообщение 1.11.2015, 15:07
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 185
Регистрация: 28.4.2013
Пользователь №: 3810

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




Репутация:   0  


Здравствуйте!
Моя прога имеет дополнительный встроенный отладчик, основаный на QDebug+QBuffer.
Когда отладчик что-то получает, вызывается слот и результат можно считать через QBuffer->buffer(), а конвертация в текст происходит так: QTextCodec::codecForLocale()->toUnicode(QBuffer->buffer()).
С латиницей проблем нет, а вот с кирилицей, есть. С строку вся кирилица записывается в юникоде с приставкой \u. К примеру, строка "Start Старт" выглядит так: "Start \u0421\u0442\u0430\u0440\u0442".
Каким образом можно конвентировать эту строку в обычный вид, чтобы вместо 16-ричного значения были читаемые символы кроме как выковыривать каждый \u****, конвентировать его и записывать обратно?
Спасибо!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 1.11.2015, 19:36
Сообщение #2


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

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

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




Репутация:   94  


Обычно QString нормально глотает такую строку, т.е.
QString s = "Start \u0421\u0442\u0430\u0440\u0442";
QLineEdit le;
le.setText(s);
получим корректную надпись.

По моему вот это QTextCodec::codecForLocale() и есть проблема.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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


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


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