Class BZip2CompressorInputStream

java.lang.Object
java.io.InputStream
org.apache.commons.compress.compressors.CompressorInputStream
org.apache.commons.compress.compressors.bzip2.BZip2CompressorInputStream
All Implemented Interfaces:
Closeable, AutoCloseable, InputStreamStatistics

public class BZip2CompressorInputStream extends CompressorInputStream implements InputStreamStatistics
An input stream that decompresses from the BZip2 format to be read as any other stream.
  • Field Details

  • Constructor Details

    • BZip2CompressorInputStream

      public BZip2CompressorInputStream(InputStream in) throws IOException
      Constructs a new BZip2CompressorInputStream which decompresses bytes read from the specified stream. This doesn't support decompressing concatenated .bz2 files.
      Parameters:
      in - the InputStream from which this object should be created
      Throws:
      IOException - if the stream content is malformed or an I/O error occurs.
      NullPointerException - if in == null
    • BZip2CompressorInputStream

      public BZip2CompressorInputStream(InputStream in, boolean decompressConcatenated) throws IOException
      Constructs a new BZip2CompressorInputStream which decompresses bytes read from the specified stream.
      Parameters:
      in - the InputStream from which this object should be created
      decompressConcatenated - if true, decompress until the end of the input; if false, stop after the first .bz2 stream and leave the input position to point to the next byte after the .bz2 stream
      Throws:
      IOException - if in == null, the stream content is malformed, or an I/O error occurs.
  • Method Details

    • matches

      public static boolean matches(byte[] signature, int length)
      Checks if the signature matches what is expected for a bzip2 file.
      Parameters:
      signature - the bytes to check
      length - the number of bytes to check
      Returns:
      true, if this stream is a bzip2 compressed stream, false otherwise
      Since:
      1.1
    • close

      public void close() throws IOException
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Overrides:
      close in class InputStream
      Throws:
      IOException
    • getCompressedCount

      public long getCompressedCount()
      Specified by:
      getCompressedCount in interface InputStreamStatistics
      Returns:
      the amount of raw or compressed bytes read by the stream
      Since:
      1.17
    • read

      public int read() throws IOException
      Specified by:
      read in class InputStream
      Throws:
      IOException
    • read

      public int read(byte[] dest, int offs, int len) throws IOException
      Overrides:
      read in class InputStream
      Throws:
      IOException