摘要:具有字節圖像的a.zip
包含a.txt
,我怎樣才能得到一個乾淨的,正確的閱讀器,返回文本文件的行?一種從壓縮文本文件中獲取文本行的讀者
我確實從網絡服務下載了一個zip文件的圖像到byte[] content
。我想寫出這樣
private BufferedReader contentToBufferedReader(byte[] content)
的方法,將返回一個可到目前爲止,使用像
reader = contentToBufferedReader(content);
while ((line = reader.readLine()) != null) {
processThe(line);
}
reader.close()
一個讀者,我有(更新)
private BufferedReader contentToBufferedReader(byte[] content) {
ByteArrayInputStream bais = new ByteArrayInputStream(content);
ZipInputStream zipStream = new ZipInputStream(bais);
BufferedReader reader = null;
try {
ZipEntry entry = zipStream.getNextEntry();
// I need only the first (and the only) entry from the zip file.
if (entry != null) {
reader = new BufferedReader(new InputStreamReader(zipStream, "UTF-8"));
System.out.println("contentToBufferedReader(): success");
}
}
catch (IOException e) {
System.out.println("contentToBufferedReader(): failed...");
System.out.println(e.getMessage());
}
return reader;
}
我我不確定如何在失敗時關閉所有的流對象。此外,如果reader
已成功返回,使用和關閉,我不確定如何關閉它們。
可能的重複[閱讀文本文件在一個zip存檔](http://stackoverflow.com/questions/4473256/reading-text-files-in-a-zip-archive) –
謝謝,卡佳,提示如何裝飾' zipStream'。我修改了這個問題,因此不應該將它視爲您提到的問題的重複。 – pepr