/ / Java - BZ2ファイルを読み、その場で解凍/解析する

Java - BZ2ファイルを読み込んで解凍/解析する - Java、圧縮、io

かなり大きなBZ2ファイルがいくつかあります。その中のテキストファイル。 Javaを使用してBZ2ファイル内の特定のファイルを解凍し、その場でデータを解凍/解析することは可能ですか? 300MBのBZ2ファイルに1GBのテキストが含まれているとしましょう。より多くのデータ。それは可能ですか?

ありがとう

回答:

答えは№1の20

apacheのcommons-compressライブラリはかなり優れています。ここに彼らのサンプルページがあります: http://commons.apache.org/proper/commons-compress/examples.html

これが最新のMavenスニペットです。

<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-compress</artifactId>
<version>1.10</version>
</dependency>

これが私のutilメソッドです。

public static BufferedReader getBufferedReaderForCompressedFile(String fileIn) throws FileNotFoundException, CompressorException {
FileInputStream fin = new FileInputStream(fileIn);
BufferedInputStream bis = new BufferedInputStream(fin);
CompressorInputStream input = new CompressorStreamFactory().createCompressorInputStream(bis);
BufferedReader br2 = new BufferedReader(new InputStreamReader(input));
return br2;
}

回答№2については2

Antプロジェクトには bzip2 としょうかん。どれが org.apache.tools.bzip2.CBZip2InputStream クラス。あなたはその場でbzip2ファイルを解凍するためにこのクラスを使うことができます - それはただ標準のJavaを拡張します InputStream クラス。