2010-08-19 24 views
2

我有一個QUrl,我需要提取路徑+文件+參數。基本上除主機名以外的所有內容 - 通過HTTP請求的內容。如何從QUrl中獲取「查詢字符串」?

我查看了Qt 4.6文檔,但是我找不到任何看起來像這樣的東西。

我會打電話給我什麼方法?

回答

8

您可以用setScheme清除方案。之後,url將是相對的,所以在將其轉換爲字符串時不應該返回主機名。

QUrl someUrl("http://stackoverflow.com/foo/bar?spam=eggs"); 
someUrl.setScheme(""); 
someUrl.toString(); 

或者,你可以給toString()方法一些額外的參數:

QUrl someUrl("http://stackoverflow.com/foo/bar?spam=eggs"); 
someUrl.toString(QUrl::RemoveScheme); 
+0

謝謝。這會很好。還有一個問題 - 當我調用toString時,它是否返回一個URL編碼的字符串? – 2010-08-19 04:21:58

+1

對於urlencoded'toString',你可以使用'toEncoded'。 文檔:http://doc.trolltech.com/4.6/qurl.html#toEncoded – Wolph 2010-08-19 11:49:30

相關問題