Package loci.common
Class CBZip2InputStream
- java.lang.Object
-
- java.io.InputStream
-
- loci.common.CBZip2InputStream
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
public class CBZip2InputStream extends InputStream
An input stream that decompresses from the BZip2 format (without the file header chars) to be read as any other stream.The decompression requires large amounts of memory. Thus you should call the
close()
method as soon as possible, to force CBZip2InputStream to release the allocated memory. See CBZip2OutputStream for information about memory usage.CBZip2InputStream reads bytes from the compressed source stream via the single byte
read()
method exclusively. Thus you should consider using a buffered source stream.Instances of this class are not threadsafe.
-
-
Constructor Summary
Constructors Constructor Description CBZip2InputStream(InputStream in)
Constructs a new CBZip2InputStream which decompresses bytes read from the specified stream.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
int
read()
int
read(byte[] dest, int offs, int len)
-
Methods inherited from class java.io.InputStream
available, mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, transferTo
-
-
-
-
Constructor Detail
-
CBZip2InputStream
public CBZip2InputStream(InputStream in) throws IOException
Constructs a new CBZip2InputStream which decompresses bytes read from the specified stream.Although BZip2 headers are marked with the magic "Bz" this constructor expects the next byte in the stream to be the first one after the magic. Thus callers have to skip the first two bytes. Otherwise this constructor will throw an exception.
- Parameters:
in
- stream from which to read BZip2 data; expected to be set to the first byte past the 2 byte magic marker- Throws:
IOException
- if the stream content is malformed or an I/O error occurs.NullPointerException
- if in == null
-
-
Method Detail
-
read
public int read() throws IOException
- Specified by:
read
in classInputStream
- Throws:
IOException
-
read
public int read(byte[] dest, int offs, int len) throws IOException
- Overrides:
read
in classInputStream
- Throws:
IOException
-
close
public void close() throws IOException
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classInputStream
- Throws:
IOException
-
-