2012-05-24 35 views
1

在Java中,我試圖驗證URL是否存在。我通過創建一個URL對象來完成此操作,然後調用URL.openConnection,然後調用URLConnection.connect(),然後調用URL.openStream()。這些URL都沒有引發異常:「http://」,這是沒有意義的。檢查URL是否存在(方法不適用於「http://」字符串)

我需要的方法是獨立於協議。

+2

'http:\\'是一個無效的協議規範。 'http://'是引用它的正確方法。 (請注意**正向**斜槓,而不是您使用的**反斜槓**) –

+2

您的意思是:'http://是否(正斜槓)? –

+0

對不起,是的,我解決了它 – Anthony

回答

3

得到響應代碼:

URL url = new URL("http://"); 
HttpURLConnection conn = (HttpURLConnection)url.openConnection(); 
int rc = conn.getResponseCode(); 
conn.disconnect(); 

如果沒有拋出異常,URL存在。這一扔

Exception in thread "main" java.lang.RuntimeException: java.lang.IllegalArgumentException: protocol = http host = null 

對我來說。

+0

太好了,謝謝。它不是獨立於協議,但我認爲我只會最終使用http。 – Anthony

+0

其實,這不會爲我拋出異常.... – Anthony

+0

@Anthony我應該補充說,你需要檢查響應代碼。如果是200,則資源存在。 – EJP

相關問題