Qt char * в QString

Я пытаюсь конвертировать char* в QString, Это должно быть тривиальной задачей, но проблема заключается в следующем:

item    char [512] "N"  char [512]
[0] 78 'N'  char
[1] 0 '\0'  char
[2] 73 'I'  char
[3] 0 '\0'  char
[4] 70 'F'  char
[5] 0 '\0'  char
[6] 84 'T'  char
[7] 0 '\0'  char
[8] 89 'Y'  char
[9] 0 '\0'  char
[10]    0 '\0'  char

Обратите внимание на нулевой символ после каждого символа ‘\ 0’. Просто пытаясь преобразовать это просто возвращает строку «N», где, как это должно привести к строке «NIFTY».

Я не уверен, что это Unicode или Ansi string (на самом деле я не знаю много об этом). Может кто-нибудь, пожалуйста, разобраться, что здесь происходит не так или что я пропускаю?

0

Решение

Это сработало для меня:

    char * chr = "N\0I\0F\0T\0Y\0\0";
QString str = QString::fromUtf16((ushort*)(chr));
qDebug() << str;
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]