Class BufferedRandomAccessFile

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

    public class BufferedRandomAccessFile
    extends java.io.RandomAccessFile
    This class is a version of the one published at https://code.google.com/p/jmzreader/wiki/BufferedRandomAccessFile augmented to handle unsigned bytes. The original class is published under Apache 2.0 license. Fix is marked below This is an optimized version of the RandomAccessFile class as described by Nick Zhang on JavaWorld.com. The article can be found at http://www.javaworld.com/javaworld/javatips/jw-javatip26.html
    Author:
    jg
    • Constructor Summary

      Constructors 
      Constructor Description
      BufferedRandomAccessFile​(java.io.File file, java.lang.String mode, int bufsize)
      Creates a new instance of the BufferedRandomAccessFile.
      BufferedRandomAccessFile​(java.lang.String filename, java.lang.String mode, int bufsize)
      Creates a new instance of the BufferedRandomAccessFile.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      long getFilePointer()
      int read()
      int read​(byte[] b, int off, int len)
      void seek​(long pos)
      • Methods inherited from class java.io.RandomAccessFile

        close, getChannel, getFD, length, read, readBoolean, readByte, readChar, readDouble, readFloat, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedShort, readUTF, setLength, skipBytes, write, write, write, writeBoolean, writeByte, writeBytes, writeChar, writeChars, writeDouble, writeFloat, writeInt, writeLong, writeShort, writeUTF
      • Methods inherited from class java.lang.Object

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

      • BufferedRandomAccessFile

        public BufferedRandomAccessFile​(java.lang.String filename,
                                        java.lang.String mode,
                                        int bufsize)
                                 throws java.io.FileNotFoundException
        Creates a new instance of the BufferedRandomAccessFile.
        Parameters:
        filename - The path of the file to open.
        mode - Specifies the mode to use ("r", "rw", etc.) See the BufferedLineReader documentation for more information.
        bufsize - The buffer size (in bytes) to use.
        Throws:
        java.io.FileNotFoundException - If the mode is "r" but the given string does not denote an existing regular file, or if the mode begins with "rw" but the given string does not denote an existing, writable regular file and a new regular file of that name cannot be created, or if some other error occurs while opening or creating the file.
      • BufferedRandomAccessFile

        public BufferedRandomAccessFile​(java.io.File file,
                                        java.lang.String mode,
                                        int bufsize)
                                 throws java.io.FileNotFoundException
        Creates a new instance of the BufferedRandomAccessFile.
        Parameters:
        file - The file to open.
        mode - Specifies the mode to use ("r", "rw", etc.) See the BufferedLineReader documentation for more information.
        bufsize - The buffer size (in bytes) to use.
        Throws:
        java.io.FileNotFoundException - If the mode is "r" but the given file path does not denote an existing regular file, or if the mode begins with "rw" but the given file path does not denote an existing, writable regular file and a new regular file of that name cannot be created, or if some other error occurs while opening or creating the file.
    • Method Detail

      • read

        public final int read()
                       throws java.io.IOException
        Overrides:
        read in class java.io.RandomAccessFile
        Throws:
        java.io.IOException
      • read

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

        public long getFilePointer()
                            throws java.io.IOException
        Overrides:
        getFilePointer in class java.io.RandomAccessFile
        Throws:
        java.io.IOException
      • seek

        public void seek​(long pos)
                  throws java.io.IOException
        Overrides:
        seek in class java.io.RandomAccessFile
        Throws:
        java.io.IOException