Class ArjArchiveInputStream

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

    public class ArjArchiveInputStream
    extends ArchiveInputStream
    Implements the "arj" archive format as an InputStream.

    Reference 1
    Reference 2

    Since:
    1.6
    • Constructor Summary

      Constructors 
      Constructor Description
      ArjArchiveInputStream​(java.io.InputStream inputStream)
      Constructs the ArjInputStream, taking ownership of the inputStream that is passed in, and using the CP437 character encoding.
      ArjArchiveInputStream​(java.io.InputStream inputStream, java.lang.String charsetName)
      Constructs the ArjInputStream, taking ownership of the inputStream that is passed in.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean canReadEntryData​(ArchiveEntry ae)
      Whether this stream is able to read the given entry.
      void close()  
      java.lang.String getArchiveComment()
      Gets the archive's comment.
      java.lang.String getArchiveName()
      Gets the archive's recorded name.
      ArjArchiveEntry getNextEntry()
      Returns the next Archive Entry in this Stream.
      static boolean matches​(byte[] signature, int length)
      Checks if the signature matches what is expected for an arj file.
      int read​(byte[] b, int off, int len)  
      • Methods inherited from class java.io.InputStream

        available, mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, transferTo
      • Methods inherited from class java.lang.Object

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

      • ArjArchiveInputStream

        public ArjArchiveInputStream​(java.io.InputStream inputStream,
                                     java.lang.String charsetName)
                              throws ArchiveException
        Constructs the ArjInputStream, taking ownership of the inputStream that is passed in.
        Parameters:
        inputStream - the underlying stream, whose ownership is taken
        charsetName - the charset used for file names and comments in the archive. May be null to use the platform default.
        Throws:
        ArchiveException - if an exception occurs while reading
      • ArjArchiveInputStream

        public ArjArchiveInputStream​(java.io.InputStream inputStream)
                              throws ArchiveException
        Constructs the ArjInputStream, taking ownership of the inputStream that is passed in, and using the CP437 character encoding.
        Parameters:
        inputStream - the underlying stream, whose ownership is taken
        Throws:
        ArchiveException - if an exception occurs while reading
    • Method Detail

      • close

        public void close()
                   throws java.io.IOException
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class java.io.InputStream
        Throws:
        java.io.IOException
      • matches

        public static boolean matches​(byte[] signature,
                                      int length)
        Checks if the signature matches what is expected for an arj file.
        Parameters:
        signature - the bytes to check
        length - the number of bytes to check
        Returns:
        true, if this stream is an arj archive stream, false otherwise
      • getArchiveName

        public java.lang.String getArchiveName()
        Gets the archive's recorded name.
        Returns:
        the archive's name
      • getArchiveComment

        public java.lang.String getArchiveComment()
        Gets the archive's comment.
        Returns:
        the archive's comment
      • getNextEntry

        public ArjArchiveEntry getNextEntry()
                                     throws java.io.IOException
        Description copied from class: ArchiveInputStream
        Returns the next Archive Entry in this Stream.
        Specified by:
        getNextEntry in class ArchiveInputStream
        Returns:
        the next entry, or null if there are no more entries
        Throws:
        java.io.IOException - if the next entry could not be read
      • canReadEntryData

        public boolean canReadEntryData​(ArchiveEntry ae)
        Description copied from class: ArchiveInputStream
        Whether this stream is able to read the given entry.

        Some archive formats support variants or details that are not supported (yet).

        Overrides:
        canReadEntryData in class ArchiveInputStream
        Parameters:
        ae - the entry to test
        Returns:
        This implementation always returns true.
      • read

        public int read​(byte[] b,
                        int off,
                        int len)
                 throws java.io.IOException
        Overrides:
        read in class java.io.InputStream
        Throws:
        java.io.IOException