Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Qt读取带有umlauts的百分比编码url_Qt_Qstring_Urldecode_Qurl - Fatal编程技术网

使用Qt读取带有umlauts的百分比编码url

使用Qt读取带有umlauts的百分比编码url,qt,qstring,urldecode,qurl,Qt,Qstring,Urldecode,Qurl,我正在尝试使用umlauts读取百分比编码的URL,例如使用Qt的äüö,…: QString str = "Nu%CC%88rnberg" qDebug() << QUrl::fromPercentEncoding(str.toUtf8()); QString str=“Nu%CC%88rnberg” qDebug()我已经完成了这个问题,但我对结果有点困惑。首先,如果您想使用字母u请使用%C3%BC而不是%CC%88(根据)。所以你需要 QString str = "N%C3%

我正在尝试使用umlauts读取百分比编码的URL,例如使用Qt的äüö,…:

QString str = "Nu%CC%88rnberg"
qDebug() << QUrl::fromPercentEncoding(str.toUtf8());
QString str=“Nu%CC%88rnberg”

qDebug()我已经完成了这个问题,但我对结果有点困惑。首先,如果您想使用字母
u
请使用
%C3%BC
而不是
%CC%88
(根据)。所以你需要

QString str = "N%C3%BCrnberg";
QString encoded = QUrl::fromPercentEncoding(str.toUtf8());
但如果您在
qDebug()
流中输出它,您可以得到不同的符号(我猜这是因为您的默认系统编码)。但是,如果您在GUI元素中输出它,您将拥有
u
符号

QMessageBox::information(this, "", encoded);

这表示主窗口。

您的代码看起来正确。您在哪里看到不正确的字符串?如果您将其输出到终端窗口,可能是因为它无法显示unicode字符。输出到终端窗口就是问题所在。