2014-05-21 40 views
1

我目前正在寫在Qt的網絡應用程序,需要單獨的網絡不會忽略形式:如何解析qt中的網絡主機名+端口?

example.org:1234 

成單獨的主機名和端口將QString。

是否有一個Qt函數來輕鬆地解析這個並檢查給定的輸入是否正確?

在此先感謝!

+2

您是否閱讀過'QUrl'文檔? 'QUrl :: host()','QUrl :: port()'。 – vahancho

+1

Thaks,還有一個問題:如何在沒有提示方案的情況下使用QUrl(i.i.'http''ftp')等等? – LocalToast

+0

@LocalToast:答案是否解決了這個問題? – lpapp

回答

2

這很簡單;你只需要使用QUrl類此與constructorhost()port()方法如下:

QUrl url("http://example.org:1234") 
qDebug() << "Host:" << url.host(); 
qDebug() << "Port:" << url.port(); 

至於避免在每個URL方案的使用您的評論,you could use this

url.setScheme("ftp"); 

url.setScheme("http");