如何在 Qt 中对字符串进行转义?

How to unescape a string in Qt?

我有以下例子:

%3ca href%3d%22http://google.com%22%3eGoogle%3c/a%3e

当未转义时,我希望它是:

<a href="http://google.com">Google</a>

我试过:

strUnescaped = QString::fromUtf8(strEncoded.toLatin1().data());

但是结果和原来一样,不受影响,不修改。我需要做什么?

您可以使用 QUrl::fromPercentEncoding 将百分比解码为常规字符:

QString encodedStr = "%3ca href='http://google.com'%3eGoogle%3c/a%3e";
auto decodedStr = QUrl::fromPercentEncoding(encodedStr.toLatin1());
// decodedStr == "<a href='http://google.com'>Google</a>"