Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Общие вопросы _ Перевод в символа и строки в двоичный код

Автор: ++Norton++ 4.10.2009, 23:48

Можно ли как нибудь перевести строку QString и символ QChar в двоичный код и обратно в читаемый формат?
Нашел только перевод в Hex, а про двоичный ничего не было. Может все же есть какой то стандартный метод?

Автор: Andrewshkovskii 5.10.2009, 0:47

Перевести ascii-код символа в двоичный?

Автор: Litkevich Yuriy 5.10.2009, 1:12

Я тоже не понял, что значит в двоичный.

Автор: kwisp 5.10.2009, 8:41

через поток можно.

Автор: ++Norton++ 5.10.2009, 10:31

Например у нас есть строка:

QString test = "а";
QString result;

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

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

Автор: BRE 5.10.2009, 10:42

        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

Спасибо большое! Это работает! А как можно выполнить обратную конвертацию и можно ли вообще?

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)