ucar.unidata.io
Class UncompressInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by java.io.FilterInputStream
          extended by ucar.unidata.io.UncompressInputStream
All Implemented Interfaces:
Closeable

public class UncompressInputStream
extends FilterInputStream

This class decompresses an input stream containing data compressed with the unix "compress" utility (LZC, a LZW variant). This code is based heavily on the unlzw.c code in gzip-1.2.4 (written by Peter Jannesen) and the original compress code.

This version has been modified from the original 0.3-3 version by the Unidata Program Center (support@unidata.ucar.edu) to make the constructor public and to fix a couple of bugs. Also: - markSupported() returns false - add uncompress() static method

Version:
0.3-3 06/05/2001
Author:
Ronald Tschalar, Unidata Program Center

Field Summary
 
Fields inherited from class java.io.FilterInputStream
in
 
Constructor Summary
UncompressInputStream(InputStream is)
           
 
Method Summary
 int available()
           
static void main(String[] args)
          test
 boolean markSupported()
          This stream does not support mark/reset on the stream.
 int read()
           
 int read(byte[] buf, int off, int len)
           
 long skip(long num)
           
static void uncompress(String fileInName, FileOutputStream out)
           
 
Methods inherited from class java.io.FilterInputStream
close, mark, read, reset
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UncompressInputStream

public UncompressInputStream(InputStream is)
                      throws IOException
Parameters:
is - the input stream to decompress
Throws:
IOException - if the header is malformed
Method Detail

read

public int read()
         throws IOException
Overrides:
read in class FilterInputStream
Throws:
IOException

read

public int read(byte[] buf,
                int off,
                int len)
         throws IOException
Overrides:
read in class FilterInputStream
Throws:
IOException

skip

public long skip(long num)
          throws IOException
Overrides:
skip in class FilterInputStream
Throws:
IOException

available

public int available()
              throws IOException
Overrides:
available in class FilterInputStream
Throws:
IOException

markSupported

public boolean markSupported()
This stream does not support mark/reset on the stream.

Overrides:
markSupported in class FilterInputStream
Returns:
false

uncompress

public static void uncompress(String fileInName,
                              FileOutputStream out)
                       throws IOException
Throws:
IOException

main

public static void main(String[] args)
                 throws Exception
test

Throws:
Exception


Copyright © 1999-2011 UCAR/Unidata. All Rights Reserved.