程序中在于外设打交到是常常会用到读硬件显示到控件,或是读控件写到硬件的情况,操作的最多的是字节流,所以肯定会用到QString 和QByteArray,下面测试一些常用的转换;

#include <QApplication>
#include <QDebug> int main(int argv, char *argc[])
{
QApplication app(argv, argc); //将16进制串转化成16进制数值组
//QStirng hex -> QByteArray hex
QString str1("12345f");
QByteArray data1 = str1.toLocal8Bit();
QByteArray data2 = QByteArray::fromHex(data1); //将10进制串转化成16进制数值组
//QStirng int -> QByteArray hex
bool ok;
QByteArray data3, data4;
QString str2 = "65534";
uint value = str2.toUInt(&ok, 10);
str2 = str2.setNum(value, 16);
data3 = str2.toLocal8Bit();
data4 = QByteArray::fromHex(data3); //将十六进制数组转换成十六进制串(Hex)串
//QByteArray hex -> QStirng hex
QString str3;
str3 = data2.toHex().toUpper(); //将十六进制数组转换成十进制串int串
//QByteArray hex -> QStirng int
QString str4;
value = (0xff00 & (data4.at(0) << 8)) | (0xff & data4.at(1));
str4.setNum(value); return app.exec();
}

运行结果

QString 与 QByteArray笔记的更多相关文章

  1. Qt中QString、QByteArray、int、double之间转换

    最近写Qt中的tcp网络编程,Socke连接后,接受到的数据类型是字节型,这就涉及到了大量的类型转换,在网上辗转几辄,总算有了点结果,特此跟大家分享.好了,不废话,下面细说. 方法/步骤     1. ...

  2. QT:QString、QByteArray和char *的转换 【转载】

    原文网址:http://blog.csdn.net/light1028/article/details/7899541 第一种,数据流的方式,这里只说从QByteArray转向QString. QBy ...

  3. QString与QByteArray互相转换的方法

    本文转载自http://blog.csdn.net/daa20/article/details/51674753 // QString转QByteArray方法 //Qt5.3.2 QString s ...

  4. qt03 QString和QByteArray相互转换

    QString str("hello");   QByteArray bytes = str.toUtf8(); // QString转QByteArray方法1       QS ...

  5. Qt的QString,QByteArray,char *相互转换

    1.QString转换为QByteArray QString str = "; QByteArray byte = str.toUtf8(); // 转换为Utf8格式 byte.toLoc ...

  6. Qt QString 与 QByteArray 的转换

    QString转换为QByteArray QByteArray byte; QString string; byte = string.toAscii(); QByteArray 转换为 QStrin ...

  7. C++-Qt【5】-QT的QString,char*,QByteArray转化以及中文乱码的问题

    引用:http://blog.sina.com.cn/s/blog_a7e2c7490101oatt.html QTextCodec *codec = QTextCodec::codecForName ...

  8. 串口通信中,QString 、QByteArray 转化需要注意的问题

    在做串口通信的时候,其中犯了一个错误.在此记录一下:QT中串口通信接到收据和发送数据的接口如下: QByteArray QIODevice::readAll()//接受数据 qint64 QIODev ...

  9. Qt中QString,int,char,QByteArray之间相互转换

    http://blog.csdn.net/ymc0329/article/details/7284514 int  转 QString int m=1; QString b; b=QString::n ...

随机推荐

  1. 注册表删除chrome插件

    注册表,对于绝大部分人来说,都是一个比较陌生的东西.然而,我们的几乎所有软件都会在这里出现. 就最近一次,公司给每个员工的chrome浏览器绑定的一堆插件,并且无法删除.手动删除插件文件后,重启机器又 ...

  2. MyBatis 实践 -动态SQL/关联查询

    MyBatis 实践 标签: Java与存储 动态SQL 动态SQL提供了对SQL语句的灵活操作,通过表达式进行判断,对SQL进行拼接/组装. if 对查询条件进行判断,如果输入参数不为空才进行查询条 ...

  3. asp.net创建XML文件方法

    方法一:按照XML的结构一步一步的构建XML文档.    通过.Net FrameWork SDK中的命名空间"System.Xml"中封装的各种类来实现的 方法一:按照XML的结 ...

  4. Self-Paced Training (3) - Docker Operations

    AgendaTroubleshooting ContainersOverview of Security PracticesPrivate RegistryIntro to Docker Machin ...

  5. I.MX6 隐藏电池图标

    /********************************************************************** * I.MX6 隐藏电池图标 * 声明: * 有些时候设 ...

  6. 【大数阶乘】NYOJ-28

    大数阶乘 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 我们都知道如何计算一个数的阶乘,可是,如果这个数很大呢,我们该如何去计算它并输出它?   输入 输入一个整数 ...

  7. 移动对meta的定义

    以下是meta每个属性详解 尤其要注意的是content里多个属性的设置一定要用分号+空格来隔开,如果不规范将不会起作用. 一.<meta http-equiv="Content-Ty ...

  8. Android -- Support包特性

    干货 每一个 Support 包版本后缀 vX 所代表的含义是他能够被使用的最低版本等级.之所以无法在更低版本进行使用的原因,是因为随着版本的升级,在新版本中有很多之前不支持的特性或者 API,因此如 ...

  9. ylbtech-Model-Account(通用账户模块设计)

    ylbtech-DatabaseDesgin:ylbtech-Model-Account(通用账户模块设计) ylbtech-Model-Account(通用账户模块设计) 1.A,数据库关系图(Da ...

  10. CABasicAnimation(CAKeyframeAnimation)keypath 取值

    - keyPath可以使用的key - #define angle2Radian(angle) ((angle)/180.0*M_PI) - transform.rotation.x 围绕x轴翻转 参 ...