QString result ("very much text\\374more Text");
一個串和backslash-int-int-int
代表一個八進制數writen炭。在這種情況下,它是一個ü
。我想要字符ü
而不是反斜槓表示。
這就是我想:
while (result.contains('\\'))
if(result.length() > result.indexOf('\\') + 3)
{
bool success;
int i (result.mid(result.indexOf('\\') + 1, 3).toInt(&success, 8));
if (success)
{
//convert i to a string
QString myStringOfBits ("\\u" + QString::number(i, 16));
//QChar c = myStringOfBits.toUtf8();
//qDebug() << c;
}
}
我是小白,我知道
編譯時,你的文本不包含'\\'字符。你的編譯器將'\ 374'翻譯成相應的字符 – chtz
qDebug給我打印'Pfad \ f \ 374r \ Ex-gesch \ 374tzte \ Dokumente'。我可以使用空格替換'\'但不是八進制字符 – Michael1248
嘗試['QString :: fromLatin1(「非常多文本\ 374更多文本」)](http://doc.qt.io/qt-4.8/qstring .html#fromLatin1) – chtz