如何在Qt中取消字符串?

SPl*_*ten 7 c++ qt urlencode

我有以下示例:

%3ca href%3d%22http://google.com%22%3eGoogle%3c/a%3e
Run Code Online (Sandbox Code Playgroud)

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

<a href="http://google.com">Google</a>
Run Code Online (Sandbox Code Playgroud)

我试过了:

strUnescaped = QString::fromUtf8(strEncoded.toLatin1().data());
Run Code Online (Sandbox Code Playgroud)

但结果与原始未受影响和未修改的结果相同.我需要做什么?

Jar*_*d42 8

您可以使用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>"
Run Code Online (Sandbox Code Playgroud)