Как конвертировать QList <QByteArray>в QString в QT? - PullRequest
1 голос
/ 11 февраля 2011

У меня есть QList<QByteArray>, который я хочу распечатать в QTextBrowser.QTextBrowser-> append () принимает QString.

Несмотря на массу поиска в Интернете, я не нашел способа преобразовать имеющиеся у меня данные в QString.

Ответы [ 3 ]

6 голосов
/ 11 февраля 2011

Существует несколько функций для преобразования QByteArray в QString: QString :: fromAscii (), QString :: fromLatin1 (), QString :: fromUtf8 () и т. Д. Для наиболее распространенных и QTextCodec для других кодировок. Какой из них правильный, зависит от кодировки текстовых данных в байтовом массиве.

1 голос
/ 11 февраля 2011

Попробуйте:

for(int i=0; i<list.size(); ++i){
    QString str(list[i].constData());
    // use your string as needed
}
0 голосов
/ 09 ноября 2013

от QByteArray до QString, до

const char * QByteArray::constData () const

Возвращает указатель на данные, хранящиеся в байтовом массиве. Указатель может использоваться для доступа к байтам, составляющим массив. Данные «\ 0 'прекращается. Указатель остается действительным до тех пор, пока байтовый массив не перераспределен или уничтожен.

Эта функция в основном полезна для передачи байтового массива в функцию, которая принимает постоянный символ *.

у вас есть этот QString конструктор

QString ( const QChar * unicode )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...