org.apache.pdfbox.io
Class RandomAccessFileOutputStream

java.lang.Object
  extended by java.io.OutputStream
      extended by org.apache.pdfbox.io.RandomAccessFileOutputStream
All Implemented Interfaces:
Closeable, Flushable

public class RandomAccessFileOutputStream
extends OutputStream

This will write to a RandomAccessFile in the filesystem and keep track of the position it is writing to and the length of the stream.

Version:
$Revision: 1.6 $
Author:
Ben Litchfield

Constructor Summary
RandomAccessFileOutputStream(RandomAccess raf)
          Constructor to create an output stream that will write to the end of a random access file.
 
Method Summary
 COSBase getExpectedLength()
          This will get the length that the PDF document specified this stream should be.
 long getLength()
          The number of bytes written to the stream.
 long getLengthWritten()
          Get the amount of data that was actually written to the stream, in theory this should be the same as the length specified but in some cases it doesn't match.
 long getPosition()
          This will get the position in the RAF that the stream was written to.
 void setExpectedLength(COSBase value)
          This will set the expected length of this stream.
 void write(byte[] b, int offset, int length)
          
 void write(int b)
          
 
Methods inherited from class java.io.OutputStream
close, flush, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RandomAccessFileOutputStream

public RandomAccessFileOutputStream(RandomAccess raf)
                             throws IOException
Constructor to create an output stream that will write to the end of a random access file.

Parameters:
raf - The file to write to.
Throws:
IOException - If there is a problem accessing the raf.
Method Detail

getPosition

public long getPosition()
This will get the position in the RAF that the stream was written to.

Returns:
The position in the raf where the file can be obtained.

getLengthWritten

public long getLengthWritten()
Get the amount of data that was actually written to the stream, in theory this should be the same as the length specified but in some cases it doesn't match.

Returns:
The number of bytes actually written to this stream.

getLength

public long getLength()
The number of bytes written to the stream.

Returns:
The number of bytes read to the stream.

write

public void write(byte[] b,
                  int offset,
                  int length)
           throws IOException

Overrides:
write in class OutputStream
Throws:
IOException

write

public void write(int b)
           throws IOException

Specified by:
write in class OutputStream
Throws:
IOException

getExpectedLength

public COSBase getExpectedLength()
This will get the length that the PDF document specified this stream should be. This may not match the number of bytes read.

Returns:
The expected length.

setExpectedLength

public void setExpectedLength(COSBase value)
This will set the expected length of this stream.

Parameters:
value - The expected value.


Copyright © 2002-2012 The Apache Software Foundation. All Rights Reserved.