嵌入式马邦德 2021-12-09 11:28 采纳率: 100%
浏览 78
已结题

qt的字符串转换问题,将qstring转换为QByteArray



```c++
    //QString str = "03 00 00 00 02 f0 80 32 01 00 00 00 00 00 0e 00 00 04 01 12 0a 10 1d 00 01 00 01 84 00 00 00";


代码如上,转为如下格式,输出为0x03之类的即可


QByteArray S7comm;
    S7comm.resize(25);
    S7comm[0] = 0x03; S7comm[1] = 0x00; S7comm[2] = 0x00;
    S7comm[3] = 0x19; S7comm[4] = 0x02; S7comm[5] = 0xf0;

```

  • 写回答

1条回答 默认 最新

  • mideum 2021-12-09 13:10
    关注

    如果没有空格,直接用QByteArray::fromHex(str.toLatin1())就行了。
    如果原始数据就有空格你自己处理一下把str里的空格先删掉,这不难吧。
    *补充:刚看了下文档说无效字符会自动跳过,那也不用删空格了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 12月17日
  • 已采纳回答 12月9日
  • 创建了问题 12月9日

悬赏问题

  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来