由于下位机通过串口传上来的字符串都是单字节的ASIIC码,直接转换为QString 不行,会出现乱码。
原因是QString是双字节的字符,所以,要特殊处理。
上代码
QString bootloadVersion = QString::fromLocal8Bit((const char *)&packet->aData[1], (int)packet->aData[0]);
本文介绍了如何处理从下位机通过串口传上来的单字节ASCII码字符串,在Qt中将其转换为QString时出现乱码的问题。文章提供了一段代码示例,展示了如何使用QString::fromLocal8Bit正确地进行字符串转换。
由于下位机通过串口传上来的字符串都是单字节的ASIIC码,直接转换为QString 不行,会出现乱码。
原因是QString是双字节的字符,所以,要特殊处理。
上代码
QString bootloadVersion = QString::fromLocal8Bit((const char *)&packet->aData[1], (int)packet->aData[0]);
转载于:https://www.cnblogs.com/blograin/p/6612792.html
您可能感兴趣的与本文相关内容
4253
5479

被折叠的 条评论
为什么被折叠?