0
我的任務是解析來自Android網站的一些XML。如果我將XML粘貼到一個字符串然後將其轉換爲InputStream並解析它,一切正常。但是,如果我嘗試使用HttpURLConnection
下載XML,它只會下載「half」並跳過根元素以及開始和結尾的某些屬性。Android獲取URL到InputStream
我想分析看起來像這樣的事情:
<Page xmlns:i... xmlns="...">
<Body>...</Body>
<Contact i:nil=".."/>
<ID>...</ID>
<Date>...</Date>
<Summary>..</Summary>
<Title>...</Title>
</Page>
當我下載我得到的東西,並打印出:
<ID>...</ID>
<Date>...</Date>
<Summary>..</Summary>
<Title>...</Title
,因此解析失敗,因爲它沒有得到什麼它的預期。我的下載代碼:
URL url = new URL(urlString);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setReadTimeout(15000 /* milliseconds */);
conn.setConnectTimeout(25000 /* milliseconds */);
conn.setRequestMethod("GET");
conn.setDoInput(true);
conn.setUseCaches(true);
conn.connect();
InputStream stream = conn.getInputStream();
return stream;
爲什麼它不能從網絡上下載整個XML頁面?
conn.setRequestProperty("Content-Type", " application/xml; charset=utf-8");
好消息:如果我添加以下行