
QByteArray将字节流转换成ACSII编码
QByteArray byt("123456");
QByteArray byteHex = byt.toHex();
qDebug()<<"QByteArray将字节流转换成ACSII编码:"<<byteHex;
"313233343536"
QByteArray将ACSII编码转字节流
QByteArray bytee("31323334");
QByteArray byteFromHex = QByteArray::fromHex(bytee);
qDebug()<<"QByteArray将ACSII编码转字节流:"<<byteFromHex;
"1234"
QByteArray转char、转QString
//QByteArray
QByteArray arr("123abc我");
qDebug()<<"QByteArray:"<<arr;
"123abc\xE6\x88\x91"
//QByteArray转char
char* aa=arr.data();
qDebug()<<"QByteArray转char:"<<aa;
123abc我
//QByteArray转QString
QString str(arr);
qDebug()<<"QByteArray转QString:"<<str;
"123abc我"
QString转QByteArray
QString st("123abc小马哥");
QByteArray byte1 = st.toLatin1(); //按照ASCII编码转换,无法转换中文
QByteArray byte2 = st.toUtf8(); //按照Utf-8编码转换,可以转换中文
QByteArray byte3=st.toLocal8Bit();//按照GBK转换,可以转换中文
qDebug()<<"QString转QByteArray转ASCLL:"<<byte1;
qDebug()<<"QString转QByteArray转UTF-8:"<<byte1;
qDebug()<<"QString转QByteArray转GBK:"<<byte1;
"123abc???"
"123abc???"
"123abc???"
将字节流转成QString
QString str=QString::fromLocal8Bit(array);//按照GBK转换,可以转换中文
QString str=QString::fromUtf8(array);//按照Utf-8转换,可以转换中文
QString str=QString::fromLatin1(array);//按照ASCLL转换,可以转换中文
QString转char
QString str1("123abc小马哥");
QByteArray byte = str1.toUtf8();
char* str2 = byte.data();
qDebug()<<"QString转char"<<str2;
123abc小马哥