由于项目需要,需要对网络资源进行解码.遇到编码问题.研究了下基本编码原理.于是有了下面两个通用代码 1. 16进制unicode转换为utf-8中文显示 QString unicodeToUtf_8(const QString &resStr) { //  unicode转utf-8  思路: 一个unicode编码占用2字节.所以只需要用4个16进制数字结合表示就行了 QString temp; for (int i = 0; i< resStr.length();) { if (resS…
最经在研究AT指令接受短信,短信是unicode编码,接受后需要根据系统的编码方案进行相关的转码比如接受到了一串字符4F60597D,它是“你好”的unicode编码,一个unicode编码占两个字节,所有可以使用4个16进制数表示:4F60->你,597D->好.那我们怎么转换了?在QString中存放的是QChar,你可以把她当作ushort来看待.因为Qt本身的编码方案就是unicode. QTextCodec *codec = QTextCodec::codecForName(&quo…
QT里面的数据转化成十六进制比较麻烦,其他的int或者byte等型都有专门的函数,而十六进制没有特定的函数去转化,这我在具体的项目中已经解决(参考网上大神)->小项目程序 QT里面虽然有什么QString str; str.toInt();等函数,但是用不好的话,会出很大的问题. QByteArray:这个东西可以存放很多数据,16进制的数据.字符串类的数据等. 下面这个data接受的是16进制数据,现在想显示出来就得转化成QString,然后再转化成int类型用于计算 QByteArray d…
1. //System.out.println("decodeUnicode:" + decodeUnicode("0049"));//I public static String decodeUnicode(final String dataStr) { int start = 0; int end = 0; final StringBuffer buffer = new StringBuffer(); while (start > -1) { end =…
字符编码的发展历史 Unicode和UTF-8有何区别? 在这个问题下的于洋的最高票回答中,比较完整地介绍了字符编码的发展历史,为了便于记忆,再次简要概括一番. 一个字节:最初一个字节的标准是混乱的,出现过4位.6位.7位的一字节标准,最终由于历史原因和物理存储需求(8位是2的3次方,方便物理存储),所以采用了8位为一个字节的标准. ASCII:定下了8位为一个字节后,那么一个字节可以表示的状态就有256种(2^8),对应0-255号.接下来就需要考虑8位如何表示一个字符了,ASCII码顾名思义…
int(x [,base ])         将x转换为一个整数 long(x [,base ])        将x转换为一个长整数 float(x )               将x转换到一个浮点数 complex(real [,imag ])  创建一个复数 str(x )                 将对象 x 转换为字符串 repr(x )                将对象 x 转换为表达式字符串 eval(str )              用来计算在字符串中的有效Py…
在QT中进行串口通信时,很多情况要用到发送16进制的数据.从网上找来了一段代码测试能用: static QByteArray QString2Hex(QString str) { QByteArray senddata; int hexdata,lowhexdata; ; int len = str.length(); senddata.resize(len/); char lstr,hstr; ; i<len; ) { hstr=str[i].toAscii(); if(hstr == ' '…
问题出现背景: 项目中有个通过ip获取归属地城市需求,我是直接通过新浪的ip归属查询接口来获取的.我使用的是shell脚本调用 RESULT=$(curl -s 'http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=119.137.53.145') 返回json格式的值: var remote_ip_info = {"ret":1,"start":-1,"end"…
最近项目用到了需要将字符串转换成16进制显示.这玩意折腾了一上午. 首先,数据块内容 struct UserData { char Head[3] = {'X','J','J'}; char Flag = '1'-'0x30'; char X_Position = '1'-'0x30'; char Y_Position = '@'-'0x30'; char Sum = Head[0] + Head[1] + Head[2] + Flag + X_Position + Y_Position; }u…
       utf8汉字编码16进制对照  GB    Unicode  UTF-8     Chinese Character Code  code# Code      (coded in UTF-8) D2BB  4E00  E4 B8 80  一   B6A1  4E01  E4 B8 81  丁   C6DF  4E03  E4 B8 83  七   CDF2  4E07  E4 B8 87  万   D5C9  4E08  E4 B8 88  丈   C8FD  4E09  E4…