私の使命は、Android から Web サイトの XML を解析することです。XML を文字列に貼り付けてから、それを InputStream に変換して解析すると、すべて正常に動作します。しかし、それを使用して XML をダウンロードしようとするとHttpURLConnection
、「半分」しかダウンロードされず、最初と最後にルート要素といくつかの属性がスキップされます。
解析したいものは次のようになります。
<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 ページ全体をダウンロードしないのはなぜですか?