《QT 十六进制字符串转化为十六进制编码.docx》由会员分享,可在线阅读,更多相关《QT 十六进制字符串转化为十六进制编码.docx(2页珍藏版)》请在三一办公上搜索。
1、QT 十六进制字符串转化为十六进制编码/* Function: hexStringtoByteArray Description: 十六进制字串转化为十六进制编码 Calls: formatString Called By: Input: hex-待转化的十六进制字串 Output: NULL Return: QByteArray Others: NULL */ QByteArray Omron:hexStringtoByteArray(QString hex) QByteArray ret; hex=hex.trimmed; formatString(hex,2, ); QStringLis
2、tsl=hex.split( ); foreach(QStrings,sl) if(!s.isEmpty) ret.append(char)s.toInt(0,16)&0xFF); return ret; /* Function: formatString Description: 将十六进制字串每字节中间加空格分隔 Calls: Called By:hexStringtoByteArray Input: org-待处理的字串 n-间隔数默认为2 ch-分隔标志,在此取空格 Output: NULL Return: void Others: NULL */ void Omron:formatString(QString&org, int n=2, constQChar&ch=QChar( ) int size= org.size; int space= qRound(size*1.0/n+0.5)-1; if(space=0) return; for(int i=0,pos=n;ispace;+i,pos+=(n+1) org.insert(pos,ch);