crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Перевод в символа и строки в двоичный код
++Norton++
  опции профиля:
сообщение 4.10.2009, 23:48
Сообщение #1


Студент
*

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

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




Репутация:   1  


Можно ли как нибудь перевести строку QString и символ QChar в двоичный код и обратно в читаемый формат?
Нашел только перевод в Hex, а про двоичный ничего не было. Может все же есть какой то стандартный метод?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Andrewshkovskii
  опции профиля:
сообщение 5.10.2009, 0:47
Сообщение #2


Активный участник
***

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

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




Репутация:   1  


Перевести ascii-код символа в двоичный?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 5.10.2009, 1:12
Сообщение #3


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

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

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




Репутация:   94  


Я тоже не понял, что значит в двоичный.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 5.10.2009, 8:41
Сообщение #4


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

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




Репутация:   23  


через поток можно.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
++Norton++
  опции профиля:
сообщение 5.10.2009, 10:31
Сообщение #5


Студент
*

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

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




Репутация:   1  


Например у нас есть строка:
QString test = "а";
QString result;

Если мы делаем так:
result = test.toAscii().toHex();

То в result будет шестнадцатиричный код символа, в данном случае, по-моему, c1. Если написать просто test.toAscii() результат не изменится, в переменной result будет буква "а". А нужно чтобы возвращался не шестнадцатиричный код символа, а двоичный, т.е. для буквы "а" (если ее шестнадцатиричный код c1) он будет: 11000001. Возможно ли это?

Сообщение отредактировал ++Norton++ - 5.10.2009, 10:32
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 5.10.2009, 10:42
Сообщение #6


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

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

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




Репутация:   44  


        QString str = "a";
        QByteArray arr = str.toAscii();
        qDebug() << arr.size() << arr;

        QString out = QString::number( arr[ 0 ], 2 );
        qDebug() << out;
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
++Norton++
  опции профиля:
сообщение 5.10.2009, 22:31
Сообщение #7


Студент
*

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

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




Репутация:   1  


Спасибо большое! Это работает! А как можно выполнить обратную конвертацию и можно ли вообще?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 25.8.2019, 16:54