com.lowagie.text.pdf
Class RandomAccessFileOrArray

java.lang.Object
  extended by com.lowagie.text.pdf.RandomAccessFileOrArray
All Implemented Interfaces:
java.io.DataInput

public class RandomAccessFileOrArray
extends java.lang.Object
implements java.io.DataInput

An implementation of a RandomAccessFile for input only that accepts a file or a byte array as data source.

Author:
Paulo Soares (psoares@consiste.pt)

Constructor Summary
RandomAccessFileOrArray(byte[] arrayIn)
           
RandomAccessFileOrArray(java.io.InputStream is)
           
RandomAccessFileOrArray(RandomAccessFileOrArray file)
           
RandomAccessFileOrArray(java.lang.String filename)
           
RandomAccessFileOrArray(java.lang.String filename, boolean forceRead, boolean plainRandomAccess)
           
RandomAccessFileOrArray(java.net.URL url)
           
 
Method Summary
 void close()
           
 int getFilePointer()
           
 java.nio.ByteBuffer getNioByteBuffer()
           
 int getStartOffset()
          Getter for property startOffset.
static byte[] InputStreamToArray(java.io.InputStream is)
           
protected  void insureOpen()
           
 boolean isOpen()
           
 int length()
           
 void pushBack(byte b)
           
 int read()
           
 int read(byte[] b)
           
 int read(byte[] b, int off, int len)
           
 boolean readBoolean()
           
 byte readByte()
           
 char readChar()
           
 char readCharLE()
          Reads a Unicode character from this stream in little-endian order.
 double readDouble()
           
 double readDoubleLE()
           
 float readFloat()
           
 float readFloatLE()
           
 void readFully(byte[] b)
           
 void readFully(byte[] b, int off, int len)
           
 int readInt()
           
 int readIntLE()
          Reads a signed 32-bit integer from this stream in little-endian order.
 java.lang.String readLine()
           
 long readLong()
           
 long readLongLE()
           
 short readShort()
           
 short readShortLE()
          Reads a signed 16-bit number from this stream in little-endian order.
 int readUnsignedByte()
           
 long readUnsignedInt()
          Reads an unsigned 32-bit integer from this stream.
 long readUnsignedIntLE()
           
 int readUnsignedShort()
           
 int readUnsignedShortLE()
          Reads an unsigned 16-bit number from this stream in little-endian order.
 java.lang.String readUTF()
           
 void reOpen()
           
 void seek(int pos)
           
 void seek(long pos)
           
 void setStartOffset(int startOffset)
          Setter for property startOffset.
 long skip(long n)
           
 int skipBytes(int n)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RandomAccessFileOrArray

public RandomAccessFileOrArray(java.lang.String filename)
                        throws java.io.IOException
Throws:
java.io.IOException

RandomAccessFileOrArray

public RandomAccessFileOrArray(java.lang.String filename,
                               boolean forceRead,
                               boolean plainRandomAccess)
                        throws java.io.IOException
Throws:
java.io.IOException

RandomAccessFileOrArray

public RandomAccessFileOrArray(java.net.URL url)
                        throws java.io.IOException
Throws:
java.io.IOException

RandomAccessFileOrArray

public RandomAccessFileOrArray(java.io.InputStream is)
                        throws java.io.IOException
Throws:
java.io.IOException

RandomAccessFileOrArray

public RandomAccessFileOrArray(byte[] arrayIn)

RandomAccessFileOrArray

public RandomAccessFileOrArray(RandomAccessFileOrArray file)
Method Detail

InputStreamToArray

public static byte[] InputStreamToArray(java.io.InputStream is)
                                 throws java.io.IOException
Throws:
java.io.IOException

pushBack

public void pushBack(byte b)

read

public int read()
         throws java.io.IOException
Throws:
java.io.IOException

read

public int read(byte[] b,
                int off,
                int len)
         throws java.io.IOException
Throws:
java.io.IOException

read

public int read(byte[] b)
         throws java.io.IOException
Throws:
java.io.IOException

readFully

public void readFully(byte[] b)
               throws java.io.IOException
Specified by:
readFully in interface java.io.DataInput
Throws:
java.io.IOException

readFully

public void readFully(byte[] b,
                      int off,
                      int len)
               throws java.io.IOException
Specified by:
readFully in interface java.io.DataInput
Throws:
java.io.IOException

skip

public long skip(long n)
          throws java.io.IOException
Throws:
java.io.IOException

skipBytes

public int skipBytes(int n)
              throws java.io.IOException
Specified by:
skipBytes in interface java.io.DataInput
Throws:
java.io.IOException

reOpen

public void reOpen()
            throws java.io.IOException
Throws:
java.io.IOException

insureOpen

protected void insureOpen()
                   throws java.io.IOException
Throws:
java.io.IOException

isOpen

public boolean isOpen()

close

public void close()
           throws java.io.IOException
Throws:
java.io.IOException

length

public int length()
           throws java.io.IOException
Throws:
java.io.IOException

seek

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

seek

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

getFilePointer

public int getFilePointer()
                   throws java.io.IOException
Throws:
java.io.IOException

readBoolean

public boolean readBoolean()
                    throws java.io.IOException
Specified by:
readBoolean in interface java.io.DataInput
Throws:
java.io.IOException

readByte

public byte readByte()
              throws java.io.IOException
Specified by:
readByte in interface java.io.DataInput
Throws:
java.io.IOException

readUnsignedByte

public int readUnsignedByte()
                     throws java.io.IOException
Specified by:
readUnsignedByte in interface java.io.DataInput
Throws:
java.io.IOException

readShort

public short readShort()
                throws java.io.IOException
Specified by:
readShort in interface java.io.DataInput
Throws:
java.io.IOException

readShortLE

public final short readShortLE()
                        throws java.io.IOException
Reads a signed 16-bit number from this stream in little-endian order. The method reads two bytes from this stream, starting at the current stream pointer. If the two bytes read, in order, are b1 and b2, where each of the two values is between 0 and 255, inclusive, then the result is equal to:
     (short)((b2 << 8) | b1)
 

This method blocks until the two bytes are read, the end of the stream is detected, or an exception is thrown.

Returns:
the next two bytes of this stream, interpreted as a signed 16-bit number.
Throws:
java.io.EOFException - if this stream reaches the end before reading two bytes.
java.io.IOException - if an I/O error occurs.

readUnsignedShort

public int readUnsignedShort()
                      throws java.io.IOException
Specified by:
readUnsignedShort in interface java.io.DataInput
Throws:
java.io.IOException

readUnsignedShortLE

public final int readUnsignedShortLE()
                              throws java.io.IOException
Reads an unsigned 16-bit number from this stream in little-endian order. This method reads two bytes from the stream, starting at the current stream pointer. If the bytes read, in order, are b1 and b2, where 0 <= b1, b2 <= 255, then the result is equal to:
     (b2 << 8) | b1
 

This method blocks until the two bytes are read, the end of the stream is detected, or an exception is thrown.

Returns:
the next two bytes of this stream, interpreted as an unsigned 16-bit integer.
Throws:
java.io.EOFException - if this stream reaches the end before reading two bytes.
java.io.IOException - if an I/O error occurs.

readChar

public char readChar()
              throws java.io.IOException
Specified by:
readChar in interface java.io.DataInput
Throws:
java.io.IOException

readCharLE

public final char readCharLE()
                      throws java.io.IOException
Reads a Unicode character from this stream in little-endian order. This method reads two bytes from the stream, starting at the current stream pointer. If the bytes read, in order, are b1 and b2, where 0 <= b1, b2 <= 255, then the result is equal to:
     (char)((b2 << 8) | b1)
 

This method blocks until the two bytes are read, the end of the stream is detected, or an exception is thrown.

Returns:
the next two bytes of this stream as a Unicode character.
Throws:
java.io.EOFException - if this stream reaches the end before reading two bytes.
java.io.IOException - if an I/O error occurs.

readInt

public int readInt()
            throws java.io.IOException
Specified by:
readInt in interface java.io.DataInput
Throws:
java.io.IOException

readIntLE

public final int readIntLE()
                    throws java.io.IOException
Reads a signed 32-bit integer from this stream in little-endian order. This method reads 4 bytes from the stream, starting at the current stream pointer. If the bytes read, in order, are b1, b2, b3, and b4, where 0 <= b1, b2, b3, b4 <= 255, then the result is equal to:
     (b4 << 24) | (b3 << 16) + (b2 << 8) + b1
 

This method blocks until the four bytes are read, the end of the stream is detected, or an exception is thrown.

Returns:
the next four bytes of this stream, interpreted as an int.
Throws:
java.io.EOFException - if this stream reaches the end before reading four bytes.
java.io.IOException - if an I/O error occurs.

readUnsignedInt

public final long readUnsignedInt()
                           throws java.io.IOException
Reads an unsigned 32-bit integer from this stream. This method reads 4 bytes from the stream, starting at the current stream pointer. If the bytes read, in order, are b1, b2, b3, and b4, where 0 <= b1, b2, b3, b4 <= 255, then the result is equal to:
     (b1 << 24) | (b2 << 16) + (b3 << 8) + b4
 

This method blocks until the four bytes are read, the end of the stream is detected, or an exception is thrown.

Returns:
the next four bytes of this stream, interpreted as a long.
Throws:
java.io.EOFException - if this stream reaches the end before reading four bytes.
java.io.IOException - if an I/O error occurs.

readUnsignedIntLE

public final long readUnsignedIntLE()
                             throws java.io.IOException
Throws:
java.io.IOException

readLong

public long readLong()
              throws java.io.IOException
Specified by:
readLong in interface java.io.DataInput
Throws:
java.io.IOException

readLongLE

public final long readLongLE()
                      throws java.io.IOException
Throws:
java.io.IOException

readFloat

public float readFloat()
                throws java.io.IOException
Specified by:
readFloat in interface java.io.DataInput
Throws:
java.io.IOException

readFloatLE

public final float readFloatLE()
                        throws java.io.IOException
Throws:
java.io.IOException

readDouble

public double readDouble()
                  throws java.io.IOException
Specified by:
readDouble in interface java.io.DataInput
Throws:
java.io.IOException

readDoubleLE

public final double readDoubleLE()
                          throws java.io.IOException
Throws:
java.io.IOException

readLine

public java.lang.String readLine()
                          throws java.io.IOException
Specified by:
readLine in interface java.io.DataInput
Throws:
java.io.IOException

readUTF

public java.lang.String readUTF()
                         throws java.io.IOException
Specified by:
readUTF in interface java.io.DataInput
Throws:
java.io.IOException

getStartOffset

public int getStartOffset()
Getter for property startOffset.

Returns:
Value of property startOffset.

setStartOffset

public void setStartOffset(int startOffset)
Setter for property startOffset.

Parameters:
startOffset - New value of property startOffset.

getNioByteBuffer

public java.nio.ByteBuffer getNioByteBuffer()
                                     throws java.io.IOException
Throws:
java.io.IOException
Since:
2.0.8


iText 2.1.7