首页| 论坛| 消息

标题:QString 转QBytearray 出错??
作者:foxgod
日期:2019-07-09 17:34
内容:

怎么转换都不对?请大神帮忙?QByteArray str1 = "\xAB\xAB\x01\x01\x01""2\xC0\x1F\xA8\xC0p\x17\xC0\x1F\xA8\xC0q\x17\x00\x00\x00\x03\x00\x00\x00\xCB\xD1\xD1\x00\x00\xBA\xBA";
QString str;
str = str.append( str1);
QByteArray str2 = str.toUtf8();
qDebug()


#1 [20091001753 07-09 20:44]
QByteArray 的数据,转换成用字符表达,是 toHex,反之 fromHex
但是这与 QString::toUtf8 又是有区别的
hex 是把16进制的数据用字符表达,utf8 是文本编码
啊,请恕我表达能力有限。
#2 回 20091001753 的帖子 [foxgod 07-09 20:58]
20091001753:QByteArray 的数据,转换成用字符表达,是 toHex,反之 fromHex
但是这与 QString::toUtf8 又是有区别的
hex 是把16进制的数据用字符表达,utf8 是文本编码
....... (2019-07-09 20:44) 
我本来是个结构体的数据,把结构体转为了CHAR*,然后转为QBytearray,因为要把这个char*,插入到json里面,返回解析json的时候,发现数据不对了。解析结构体出错了,不知道问题在哪里
#3 [fsu0413 07-09 21:33]
QString str;
str = str.append( str1);
这段需要保证str1是有效的utf8(Qt5)/有效的Latin1(Qt4),否则转换会出现乱码
#4 回 fsu0413 的帖子 [foxgod 07-09 21:36]
fsu0413:这段需要保证str1是有效的utf8(Qt5)/有效的Latin1(Qt4),否则转换会出现乱码
....... (2019-07-09 21:33)
就是出错了,解析出来的char字段不一样了,你觉得应该如何做呢?需要对str1进行编码吗?
#5 回 foxgod 的帖子 [fsu0413 07-09 21:52]
foxgod:就是出错了,解析出来的char字段不一样了,你觉得应该如何做呢?需要对str1进行编码吗?
 (2019-07-09 21:36) 
你要转换这段二进制为字符串还是?
如果是的话知道原来是什么编码么?加密了么?

<< 1 2 3 >> (1/4)

回复 发表
主题 版块