## org.apache.poi.poifs.filesystem
Class ODocumentInputStream

    java.lang.Object
      java.io.InputStream
          org.apache.poi.poifs.filesystem.DocumentInputStream
              org.apache.poi.poifs.filesystem.ODocumentInputStream

All Implemented Interfaces:
  java.io.Closeable, LittleEndianInput

    public final class ODocumentInputStream

extends DocumentInputStream

This class provides methods to read a DocumentEntry managed by a `POIFSFileSystem` instance.

Author:
  Marc Johnson (mjohnson at apache dot org)

Field Summary

Fields inherited from class org.apache.poi.poifs.filesystem.DocumentInputStream
`EOF, SIZE_INT, SIZE_LONG, SIZE_SHORT`

Constructor Summary
`ODocumentInputStream(DocumentEntry document)` Create an InputStream from the specified DocumentEntry
`ODocumentInputStream(POIFSDocument document)` Create an InputStream from the specified Document

Method Summary
`int` `available()`
`void` `close()`
`void` `mark(int ignoredReadlimit)`
`int` `read()`
`int` `read(byte[] b, int off, int len)`
`byte` `readByte()`
`double` `readDouble()`
`void` `readFully(byte[] buf, int off, int len)`
`int` `readInt()`
`long` `readLong()`
`short` `readShort()`
`int` `readUByte()`
`int` `readUShort()`
`void` `reset()` Repositions this stream to the position at the time the mark() method was last called on this input stream.
`long` `skip(long n)`

Methods inherited from class org.apache.poi.poifs.filesystem.DocumentInputStream
`markSupported, read, readFully`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ODocumentInputStream

    public ODocumentInputStream(DocumentEntry document)
                         throws java.io.IOException

  Create an InputStream from the specified DocumentEntry

  Parameters:
    `document` - the DocumentEntry to be read
  Throws:
    `java.io.IOException` - if the DocumentEntry cannot be opened (like, maybe it has been deleted?)

### ODocumentInputStream

    public ODocumentInputStream(POIFSDocument document)

  Create an InputStream from the specified Document

  Parameters:
    `document` - the Document to be read

Method Detail

### available

    public int available()

  Specified by:
    `available` in interface `LittleEndianInput`
  Overrides:
    `available` in class `DocumentInputStream`

### close

    public void close()

  Specified by:
    `close` in interface `java.io.Closeable`
  Overrides:
    `close` in class `DocumentInputStream`

### mark

    public void mark(int ignoredReadlimit)

  Overrides:
    `mark` in class `DocumentInputStream`

### read

    public int read()
             throws java.io.IOException

  Overrides:
    `read` in class `DocumentInputStream`
  Throws:
    `java.io.IOException`

### read

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

  Overrides:
    `read` in class `DocumentInputStream`
  Throws:
    `java.io.IOException`

### reset

    public void reset()

  Repositions this stream to the position at the time the mark() method was last called on this input stream. If mark() has not been called this method repositions the stream to its beginning.

  Overrides:
    `reset` in class `DocumentInputStream`

### skip

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

  Overrides:
    `skip` in class `DocumentInputStream`
  Throws:
    `java.io.IOException`

### readByte

    public byte readByte()

  Specified by:
    `readByte` in interface `LittleEndianInput`
  Overrides:
    `readByte` in class `DocumentInputStream`

### readDouble

    public double readDouble()

  Specified by:
    `readDouble` in interface `LittleEndianInput`
  Overrides:
    `readDouble` in class `DocumentInputStream`

### readShort

    public short readShort()

  Specified by:
    `readShort` in interface `LittleEndianInput`
  Overrides:
    `readShort` in class `DocumentInputStream`

### readFully

    public void readFully(byte[] buf,
                          int off,
                          int len)

  Specified by:
    `readFully` in interface `LittleEndianInput`
  Overrides:
    `readFully` in class `DocumentInputStream`

### readLong

    public long readLong()

  Specified by:
    `readLong` in interface `LittleEndianInput`
  Overrides:
    `readLong` in class `DocumentInputStream`

### readInt

    public int readInt()

  Specified by:
    `readInt` in interface `LittleEndianInput`
  Overrides:
    `readInt` in class `DocumentInputStream`

### readUShort

    public int readUShort()

  Specified by:
    `readUShort` in interface `LittleEndianInput`
  Overrides:
    `readUShort` in class `DocumentInputStream`

### readUByte

    public int readUByte()

  Specified by:
    `readUByte` in interface `LittleEndianInput`
  Overrides:
    `readUByte` in class `DocumentInputStream`

Copyright 2012 The Apache Software Foundation or its licensors, as applicable.