0
我正在從服務器讀取xml數據並解析它,在此期間我收到以下異常。android:java.io.IOException:流關閉
05-07 12:37:31.904: W/System.err(2765): java.io.IOException: stream closed
05-07 12:37:31.907: W/System.err(2765): at libcore.net.http.AbstractHttpInputStream.checkNotClosed(AbstractHttpInputStream.java:68)
05-07 12:37:31.908: W/System.err(2765): at at libcore.net.http.ChunkedInputStream.read(ChunkedInputStream.java:41)
05-07 12:37:31.908: W/System.err(2765): at java.io.InputStreamReader.read(InputStreamReader.java:244)
05-07 12:37:31.908: W/System.err(2765): at org.kxml2.io.KXmlParser.fillBuffer(KXmlParser.java:1496)
05-07 12:37:31.909: W/System.err(2765): at org.kxml2.io.KXmlParser.readName(KXmlParser.java:1543)
05-07 12:37:31.909: W/System.err(2765): at org.kxml2.io.KXmlParser.parseStartTag(KXmlParser.java:1045)
05-07 12:37:31.909: W/System.err(2765): at org.kxml2.io.KXmlParser.next(KXmlParser.java:369)
05-07 12:37:31.909: W/System.err(2765): at org.kxml2.io.KXmlParser.next(KXmlParser.java:310)
我的代碼是
**private static InputStream downloadUrl(String urlString) throws IOException {
System.setProperty("http.keepAlive", "false");
**///// added after some search about this exception, but it didnt fix the issue fo**r me
URL url = new URL(urlString);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
//conn.setReadTimeout(10000 /* milliseconds */);
conn.setConnectTimeout(15000 /* milliseconds */);
conn.setRequestMethod("GET");
conn.setDoInput(true);
// Starts the query
conn.connect();
return conn.getInputStream();
}**
XmlPullParser parser = getParser(in);
parser.require(XmlPullParser.START_TAG, ns, "response");
while (parser.next() != XmlPullParser.END_TAG) {
........
}
解析成功在XML文件中第幾個記錄,然後該異常來
後端問題? – Blackbelt 2013-05-07 09:16:09
我能夠讀取xml的前幾個記錄。所以沒有關於連接或權限的問題。 – png 2013-05-07 09:25:08
後端是您正在獲取信息的服務器。也許是他關閉連接 – Blackbelt 2013-05-07 09:26:03