2011-06-29 60 views
0

我手裏有問題。獲取url.getContent()時出現問題

我有一個URL,當我啓動連接到這個URL並執行url.getContent()。 響應類型sun.net.www.protocol.http.HttpURLConnection$HttpInputStream

我試圖將輸出分配給HttpURLConnectionHttpInputStream h = url.getContent()。但我沒有成功。 我將相應的庫導入代碼,但仍然沒有運氣。

如果我在eclipse中檢查url.getContent(),它也會顯示變量thei $ 0。

我需要的只是這個$ 0中的一個URL。但直到現在我無法檢索它。

Output when i inspect the element

在此$ 0,則一個變量名的網址,我試圖把它牽回家。

我也很難理解這個$ 0和鋤頭來檢索它。

使用流後我得到一些非可讀的輸出

After using strams to read the content

問候 Dheeraj喬希

回答

6

您應該使用URL類的openStream方法。

代碼片段:

InputStream in = url.openStream(); 
BufferedReader reader = new BufferedReader(new InputStreamReader()); 
String line = reader.readLine(); 

如果輸出不是以可讀的字符串格式,然後使用:

InputStream in = url.openStream(); 
byte[] buffer = new byte[512]; 
int bytesRead = in.read(buffer); 
+0

輸出不可讀的格式。 –

+0

@Dheeraj我添加了一個讀取字節的例子。 – Marcelo

+0

我編輯我的問題引用什麼輸出後使用字節數組和字符串。 –

0

我找到了答案。

問題說明:當我執行一個URL時,響應中有另一個URL,我需要取回它。

解決方案:

java.net.URLConnection urlconn = url.openConnection(); 
java.net.HttpURLConnection conn = (java.net.HttpURLConnection)urlconn; 
conn.connect(); 
conn.getContent(); 

URL newurl = conn.getURL(); 
System.out.println(newurl.toString()); 

的響應可以是獲得使用的getContent()和。連接對象將擁有包含新URL的委託。新的URL可以使用getURL方法獲取。

問候
Dheeraj喬希

相關問題