1

我正在尝试从 URL 中检索 gzip 后的 XML 文件。我的问题是,GZipInputStream在生产中使用解压缩时,我得到的内容似乎被截断了。我最多只能读取 xml 的一小部分。

URL feedURL = new URL(url);
HttpURLConnection connection = (HttpURLConnection) feedURL.openConnection();
GZIPInputStream input = new GZIPInputStream(connection.getInputStream());
BufferedReader br = new BufferedReader(new InputStreamReader(input));
StringBuffer sb = new StringBuffer();
String line = "";
while((line = br.readLine()) != null) {
sb.append(line);
}
log.info(sb.toString());

此代码始终只读取 xml 的一小部分。多次运行它会显示完全相同的结果。我已经尝试过先下载二进制内容,使用 aByteArrayOutputStream.数组的大小与我下载的文件完全相同。但是,当我使用GZipInputStream解压缩字节数组时,我仍然得到相同的截断字符串。

顺便说一句,在本地一切正常,所以我被引导相信在GZipInputStream某种程度上受限于GAE. 有谁知道我怎么能解决这个问题?

4

0 回答 0