Class ZCompressorInputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable, InputStreamStatistics

    public class ZCompressorInputStream
    extends LZWInputStream
    Input stream that decompresses .Z files.
    Since:
    1.7
    • Field Detail

      • blockMode

        private final boolean blockMode
      • maxCodeSize

        private final int maxCodeSize
      • totalCodesRead

        private long totalCodesRead
    • Constructor Detail

      • ZCompressorInputStream

        public ZCompressorInputStream​(java.io.InputStream inputStream,
                                      int memoryLimitInKb)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • ZCompressorInputStream

        public ZCompressorInputStream​(java.io.InputStream inputStream)
                               throws java.io.IOException
        Throws:
        java.io.IOException
    • Method Detail

      • clearEntries

        private void clearEntries()
      • readNextCode

        protected int readNextCode()
                            throws java.io.IOException
        Reads the next code from the stream.

        This method is only protected for technical reasons and is not part of Commons Compress' published API. It may change or disappear without warning.

        Overrides:
        readNextCode in class LZWInputStream
        Returns:
        the next code
        Throws:
        java.io.IOException - on error
      • reAlignReading

        private void reAlignReading()
                             throws java.io.IOException
        Throws:
        java.io.IOException
      • addEntry

        protected int addEntry​(int previousCode,
                               byte character)
                        throws java.io.IOException
        Add a new entry to the dictionary.

        This method is only protected for technical reasons and is not part of Commons Compress' published API. It may change or disappear without warning.

        Specified by:
        addEntry in class LZWInputStream
        Parameters:
        previousCode - the previous code
        character - the next character to append
        Returns:
        the new code
        Throws:
        java.io.IOException - on error
      • decompressNextSymbol

        protected int decompressNextSymbol()
                                    throws java.io.IOException
        Read the next code and expand it.

        This method is only protected for technical reasons and is not part of Commons Compress' published API. It may change or disappear without warning.

        Specified by:
        decompressNextSymbol in class LZWInputStream
        Returns:
        the expanded next code, negative on EOF
        Throws:
        java.io.IOException - on error
      • matches

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