目录
测试代码
结果输出
参考
toLatin1
toLocal8Bit
toUcs4
toUtf8
unicode
utf16
toStdString
toStdU16String
toStdU32String
toStdWString
测试代码
void TestSet() {
QString tmp("你好,世界");
qDebug() << "tmp = " << tmp << "\n";
qDebug() << "tmp.toLocal8Bit() = " << tmp.toLocal8Bit() << "\n"; // utf-8编码16进制
qDebug() << "tmp.toLatin1() = " << tmp.toLatin1() << "\n"; // 不在编码集中
qDebug() << "tmp.toUcs4() = " << tmp.toUcs4() << "\n"; // unicode编码10进制,每个汉字均使用uint数字表示
qDebug() << "tmp.toUtf8() = " << tmp.toUtf8() << "\n"; // utf-8编码16进制
qDebug() << "tmp.utf16() = " << tmp.utf16() << "\n";
qDebug() << "tmp.unicode() = " << tmp.unicode() << "\n";
#ifndef UNICODE
qDebug() << "tmp.toStdString() = " << tmp.toStdString() << "\n";
#else
qDebug() << "tmp.toStdWString() = " << tmp.toStdWString() << "\n";
#endif
qDebug() << "tmp.toStdU16String() = " << tmp.toStdU16String() << "\n";
//qDebug() << "tmp.toStdU32String() = " << tmp.toStdU32String() << "\n";}
结果输出
tmp = "你好,世界"
tmp.toLocal8Bit() = "\xE4\xBD\xA0\xE5\xA5\xBD\xEF\xBC\x8C\xE4\xB8\x96\xE7\x95\x8C"
tmp.toLatin1() = "?????"
tmp.toUcs4() = QVector(20320, 22909, 65292, 19990, 30028)
tmp.toUtf8() = "\xE4\xBD\xA0\xE5\xA5\xBD\xEF\xBC\x8C\xE4\xB8\x96\xE7\x95\x8C"
tmp.utf16() = 0x22b11050
tmp.unicode() = 0x22b11050
tmp.toStdWString() = "你好,世界"
tmp.toStdU16String() = "你好,世界"
参考
你好,世界的编码
本文来自博客园,作者:flxx,转载请注明原文链接:https://www.cnblogs.com/faithlocus/p/16689639.html