Class SeekableOutputStream

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

    public class SeekableOutputStream
    extends java.io.OutputStream
    An OutputStream which can seek to an arbitrary offset.
    Version:
    $Id: SeekableOutputStream.java 1733416 2016-03-03 07:07:13Z gadams $
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.io.RandomAccessFile file  
    • Constructor Summary

      Constructors 
      Constructor Description
      SeekableOutputStream​(java.io.RandomAccessFile file)
      Constructs a SeekableOutputStream from a RandomAccessFile.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()  
      void flush()
      Invokes getFD().sync() on the underlying RandomAccessFile.
      long getFilePointer()  
      void seek​(long pos)  
      void write​(byte[] b)  
      void write​(byte[] b, int off, int len)  
      void write​(int 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
    • Field Detail

      • file

        private java.io.RandomAccessFile file
    • Constructor Detail

      • SeekableOutputStream

        public SeekableOutputStream​(java.io.RandomAccessFile file)
        Constructs a SeekableOutputStream from a RandomAccessFile. Unless otherwise indicated, all method invocations are fowarded to the underlying RandomAccessFile.
        Parameters:
        file - The RandomAccessFile to which calls will be forwarded.
        Throws:
        java.lang.IllegalArgumentException - if file is null.
    • Method Detail

      • write

        public void write​(int b)
                   throws java.io.IOException
        Specified by:
        write in class java.io.OutputStream
        Throws:
        java.io.IOException
      • write

        public void write​(byte[] b)
                   throws java.io.IOException
        Overrides:
        write in class java.io.OutputStream
        Throws:
        java.io.IOException
      • write

        public void write​(byte[] b,
                          int off,
                          int len)
                   throws java.io.IOException
        Overrides:
        write in class java.io.OutputStream
        Throws:
        java.io.IOException
      • flush

        public void flush()
                   throws java.io.IOException
        Invokes getFD().sync() on the underlying RandomAccessFile.
        Specified by:
        flush in interface java.io.Flushable
        Overrides:
        flush in class java.io.OutputStream
        Throws:
        java.io.IOException
      • 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.OutputStream
        Throws:
        java.io.IOException
      • getFilePointer

        public long getFilePointer()
                            throws java.io.IOException
        Throws:
        java.io.IOException
      • seek

        public void seek​(long pos)
                  throws java.io.IOException
        Throws:
        java.io.IOException