Class LhaOutputStream

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

    public class LhaOutputStream
    extends java.io.OutputStream
    ???�}???????X?g???[???? ???k?f?[?^???o???????????????[?e?B???e?B?N???X?B
    java.util.zip.ZipOutputStream ???????C???^?[?t?F?C?X???????????????????B Zip?????�‘?ALHA???o?????{?? 2?p?X???????????A1?????G???g???????k?????????A ?G???g???S?????f?[?^???????????L?????????K?v???????B ???????????L?????????g?p?????????�‘?????? LhaRetainedOutputStream ?? LhaImmediateOutputStream ???g?p???????B
     -- revision history --
     $Log: LhaOutputStream.java,v $
     Revision 1.1.2.2  2005/05/03 07:48:40  dangan
     [bug fix]
         ???k?@?????q -lhd- ???w?????????A???k???T?C?Y???I???W?i???T?C?Y???????????�‘?????A
         ?K?? -lh0- ???????????????�‘???B?????????f?B???N?g?????????i?[?????????????B
    
     Revision 1.1.2.1  2005/04/29 02:14:28  dangan
     [bug fix]
         ???k?@?????q -lhd- ???w?????????A???k???T?C?Y???I???W?i???T?C?Y???????????�‘?????A
         ?K?? -lh0- ???????????????�‘???B?????????f?B???N?g?????????i?[?????????????B
    
     Revision 1.1  2002/12/08 00:00:00  dangan
     [maintenance]
         LhaConstants ???? CompressMethod ?????N???X???????X???????????C???B
    
     Revision 1.0  2002/08/05 00:00:00  dangan
     add to version control
     [change]
         ?R???X?g???N?^???? ?????? String encode ?????????????p?~?A
         Properties ???????????????????????B
     [maintenance]
         ?\?[?X????
         ?^?u?p?~
         ???C?Z???X?�÷???C??
    
     
    Version:
    $Revision: 1.1.2.2 $
    Author:
    $Author: dangan $
    • Constructor Summary

      Constructors 
      Constructor Description
      LhaOutputStream​(java.io.OutputStream out)
      out ?? ???k?f?[?^???o??????OutputStream???\?z?????B
      ?????????@?\???????????g?p?????B?�}???????A ???k???f?[?^???????????????�L???????????t?@?C???????k???????�‘?B
      ?e???k?`?????????????????????�÷?�Ê???????????v???p?e?B???? LhaProperty.getProperties() ???????????v???p?e?B???g?p???????B
      LhaOutputStream​(java.io.OutputStream out, java.io.RandomAccessFile file)
      out ?? ???k?f?[?^???o??????OutputStream???\?z?????B
      ?e???k?`?????????????????????�÷?�Ê???????????v???p?e?B???? LhaProperty.getProperties() ???????????v???p?e?B???g?p???????B
      LhaOutputStream​(java.io.OutputStream out, java.io.RandomAccessFile file, java.util.Properties property)
      out ?? ???k?f?[?^???o??????OutputStream???\?z?????B
      LhaOutputStream​(java.io.OutputStream out, java.util.Properties property)
      out ?? ???k?f?[?^???o??????OutputStream???\?z?????B
      ?????????@?\???????????g?p?????B?�}???????A ???k???f?[?^???????????????�L???????????t?@?C???????k???????�‘?B
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()
      ?o???????S?????f?[?^???o?????A ?X?g???[???????�÷???B
      void closeEntry()
      ?????o???????G???g???????�÷?A?????G???g?????o?????\?????????????B ???k?????s????(???k???T?C?Y?????k?O?T?C?Y??????????)?????A ???????????k???i?[?????B?G???g?????T?C?Y???????�‘?????A ?�}???????????????????????????????B
      void flush()
      flush ???????????????s???B ???????????????????????G???g?????f?[?^?? ?????????@?\???????�}?????????w???????B ?�}???? PostLzssDecoder?ALzssOutputStream ???K?????�N?? flush() ???????????????? ???�÷?f?[?^???o?????????????????????�‘?B ?????????? ???????o?????? flush() ?????B
      void putNextEntry​(LhaHeader header)
      ?V???�‘?G???g???????????????????X?g???[?????????????B
      ?�}?????\?b?h?? ???????k???????G???g?????????? putNextEntryAlreadyCompressed(), ?�‘???????k???????�‘???�‘?????? putNextEntryNotYetCompressed() ???????o???B
      ???k???????�‘?????????????A header.getCompressedSize()
      header.getOriginalSize()
      header.getCRC()
      ???????????????? LhaHeader.UNKNOWN ?????????�‘???????k???????�‘???�‘???????B
      void putNextEntryAlreadyCompressed​(LhaHeader header)
      ???????k???????G???g?????????�}?????????X?g???[?????????????B
      ???k???????????A?????????@?\???o?????????o???????o?????????B ???k?????f?[?^???????�‘?????A?????o?????????????????B
      void putNextEntryNotYetCompressed​(LhaHeader header)
      ?�‘???????k???????�‘???�‘?G???g?????????�}?????????X?g???[?????????????B
      header ?? OriginalSize, CompressedSize, CRC???w?????????�‘???????????????B
      void write​(byte[] buffer)
      ???????G???g???? buffer?????e???S???????o???B
      void write​(byte[] buffer, int index, int length)
      ???????G???g???? buffer?? index???? length?o?C?g???f?[?^???????o???B
      void write​(int data)
      ???????G???g????1?o?C?g???f?[?^???????�}???B
      • Methods inherited from class java.io.OutputStream

        nullOutputStream
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • LhaOutputStream

        public LhaOutputStream​(java.io.OutputStream out)
        out ?? ???k?f?[?^???o??????OutputStream???\?z?????B
        ?????????@?\???????????g?p?????B?�}???????A ???k???f?[?^???????????????�L???????????t?@?C???????k???????�‘?B
        ?e???k?`?????????????????????�÷?�Ê???????????v???p?e?B???? LhaProperty.getProperties() ???????????v???p?e?B???g?p???????B
        Parameters:
        out - ???k?f?[?^???o???????X?g???[??
        See Also:
        LhaProperty.getProperties()
      • LhaOutputStream

        public LhaOutputStream​(java.io.OutputStream out,
                               java.util.Properties property)
        out ?? ???k?f?[?^???o??????OutputStream???\?z?????B
        ?????????@?\???????????g?p?????B?�}???????A ???k???f?[?^???????????????�L???????????t?@?C???????k???????�‘?B
        Parameters:
        out - ???k?f?[?^???o???????X?g???[??
        property - ?e???k?`?????????????????????�÷?�Ê???????????????v???p?e?B
        See Also:
        LhaProperty
      • LhaOutputStream

        public LhaOutputStream​(java.io.OutputStream out,
                               java.io.RandomAccessFile file)
        out ?? ???k?f?[?^???o??????OutputStream???\?z?????B
        ?e???k?`?????????????????????�÷?�Ê???????????v???p?e?B???? LhaProperty.getProperties() ???????????v???p?e?B???g?p???????B
        Parameters:
        out - ???k?f?[?^???o???????X?g???[??
        file - RandomAccessFile ???C???X?^???X?B
        • ???? close() ???????�‘???�‘???B
        • ?R???X?g???N?^?? mode ???? "rw" ?I?v?V???????g?p?????A ?????�}?????????�}?????o???????????�÷?�Ê???????C???X?^???X???????�}???B
        ???????????????????B
        See Also:
        LhaProperty.getProperties()
      • LhaOutputStream

        public LhaOutputStream​(java.io.OutputStream out,
                               java.io.RandomAccessFile file,
                               java.util.Properties property)
        out ?? ???k?f?[?^???o??????OutputStream???\?z?????B
        Parameters:
        out - ???k?f?[?^???o???????X?g???[??
        file - RandomAccessFile ???C???X?^???X?B
        • ???? close() ???????�‘???�‘???B
        • ?R???X?g???N?^?? mode ???? "rw" ?I?v?V???????g?p?????A ?????�}?????????�}?????o???????????�÷?�Ê???????C???X?^???X???????�}???B
        ???????????????????B
        property - ?e???k?`?????????????????????�÷?�Ê???????????????v???p?e?B
        Throws:
        java.io.UnsupportedEncodingException - encode ???T?|?[?g???????�‘????
        See Also:
        LhaProperty
    • Method Detail

      • write

        public void write​(int data)
                   throws java.io.IOException
        ???????G???g????1?o?C?g???f?[?^???????�}???B
        Specified by:
        write in class java.io.OutputStream
        Parameters:
        data - ?????�}???f?[?^
        Throws:
        java.io.IOException - ???o???G???[?????�÷?????????B
      • write

        public void write​(byte[] buffer)
                   throws java.io.IOException
        ???????G???g???? buffer?????e???S???????o???B
        Overrides:
        write in class java.io.OutputStream
        Parameters:
        buffer - ?????o???f?[?^?????????o?C?g?z??
        Throws:
        java.io.IOException - ???o???G???[?????�÷?????????B
      • write

        public void write​(byte[] buffer,
                          int index,
                          int length)
                   throws java.io.IOException
        ???????G???g???? buffer?? index???? length?o?C?g???f?[?^???????o???B
        Overrides:
        write in class java.io.OutputStream
        Parameters:
        buffer - ?????o???f?[?^?????????o?C?g?z??
        index - buffer?????????o???�~???f?[?^???J?n???u
        length - ?f?[?^???o?C?g??
        Throws:
        java.io.IOException - ???o???G???[?????�÷?????????B
      • flush

        public void flush()
                   throws java.io.IOException
        flush ???????????????s???B ???????????????????????G???g?????f?[?^?? ?????????@?\???????�}?????????w???????B ?�}???? PostLzssDecoder?ALzssOutputStream ???K?????�N?? flush() ???????????????? ???�÷?f?[?^???o?????????????????????�‘?B ?????????? ???????o?????? flush() ?????B
        Specified by:
        flush in interface java.io.Flushable
        Overrides:
        flush in class java.io.OutputStream
        Throws:
        java.io.IOException - ???o???G???[?????�÷????????
        See Also:
        PostLzssEncoder.flush(), LzssOutputStream.flush()
      • close

        public void close()
                   throws java.io.IOException
        ?o???????S?????f?[?^???o?????A ?X?g???[???????�÷???B
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class java.io.OutputStream
        Throws:
        java.io.IOException - ???o???G???[?????�÷????????
      • putNextEntry

        public void putNextEntry​(LhaHeader header)
                          throws java.io.IOException
        ?V???�‘?G???g???????????????????X?g???[?????????????B
        ?�}?????\?b?h?? ???????k???????G???g?????????? putNextEntryAlreadyCompressed(), ?�‘???????k???????�‘???�‘?????? putNextEntryNotYetCompressed() ???????o???B
        ???k???????�‘?????????????A
        • header.getCompressedSize()
        • header.getOriginalSize()
        • header.getCRC()
        ???????????????? LhaHeader.UNKNOWN ?????????�‘???????k???????�‘???�‘???????B
        Parameters:
        header - ?????�}???G???g???????�‘?????????????? LhaHeader???C???X?^???X?B
        Throws:
        java.io.IOException - ???o???G???[?????�÷????????
      • putNextEntryAlreadyCompressed

        public void putNextEntryAlreadyCompressed​(LhaHeader header)
                                           throws java.io.IOException
        ???????k???????G???g?????????�}?????????X?g???[?????????????B
        ???k???????????A?????????@?\???o?????????o???????o?????????B ???k?????f?[?^???????�‘?????A?????o?????????????????B
        Parameters:
        header - ?????�}???G???g???????�‘?????????????? LhaHeader???C???X?^???X?B
        Throws:
        java.io.IOException - ???o???G???[?????�÷????????
        java.lang.IllegalArgumentException -
        1. header.getOriginalSize() ?? LhaHeader.UNKNOWN ??????????
        2. header.getComressedSize() ?? LhaHeader.UNKNOWN ??????????
        3. header.getCRC() ?? LhaHeader.UNKNOWN ??????????
        ?????????B
      • putNextEntryNotYetCompressed

        public void putNextEntryNotYetCompressed​(LhaHeader header)
                                          throws java.io.IOException
        ?�‘???????k???????�‘???�‘?G???g?????????�}?????????X?g???[?????????????B
        header ?? OriginalSize, CompressedSize, CRC???w?????????�‘???????????????B
        Parameters:
        header - ?????�}???G???g???????�‘?????????????? LhaHeader???C???X?^???X?B
        Throws:
        java.io.IOException - ???o???G???[?????�÷????????
      • closeEntry

        public void closeEntry()
                        throws java.io.IOException
        ?????o???????G???g???????�÷?A?????G???g?????o?????\?????????????B ???k?????s????(???k???T?C?Y?????k?O?T?C?Y??????????)?????A ???????????k???i?[?????B?G???g?????T?C?Y???????�‘?????A ?�}???????????????????????????????B
        Throws:
        java.io.IOException - ???o???G???[?????�÷????????