如何在 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>"
我有以下例子:
%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>"