|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.poi.poifs.filesystem.NPOIFSStream
public class NPOIFSStream
This handles reading and writing a stream within a
NPOIFSFileSystem
. It can supply an iterator
to read blocks, and way to write out to existing and
new blocks.
Most users will want a higher level version of this,
which deals with properties to track which stream
this is.
This only works on big block streams, it doesn't
handle small block ones.
This uses the new NIO code
TODO Implement a streaming write method, and append
Nested Class Summary | |
---|---|
protected class |
NPOIFSStream.StreamBlockByteBuffer
|
protected class |
NPOIFSStream.StreamBlockByteBufferIterator
Class that handles a streaming read of one stream |
Constructor Summary | |
---|---|
NPOIFSStream(BlockStore blockStore)
Constructor for a new stream. |
|
NPOIFSStream(BlockStore blockStore,
int startBlock)
Constructor for an existing stream. |
Method Summary | |
---|---|
void |
free()
Frees all blocks in the stream |
java.util.Iterator<java.nio.ByteBuffer> |
getBlockIterator()
|
java.io.OutputStream |
getOutputStream()
|
int |
getStartBlock()
What block does this stream start at? Will be POIFSConstants.END_OF_CHAIN for a
new stream that hasn't been written to yet. |
java.util.Iterator<java.nio.ByteBuffer> |
iterator()
Returns an iterator that'll supply one ByteBuffer
per block in the stream. |
void |
updateContents(byte[] contents)
Updates the contents of the stream to the new set of bytes. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public NPOIFSStream(BlockStore blockStore, int startBlock)
HeaderBlock
or a Property
)
public NPOIFSStream(BlockStore blockStore)
Method Detail |
---|
public int getStartBlock()
POIFSConstants.END_OF_CHAIN
for a
new stream that hasn't been written to yet.
public java.util.Iterator<java.nio.ByteBuffer> iterator()
ByteBuffer
per block in the stream.
iterator
in interface java.lang.Iterable<java.nio.ByteBuffer>
public java.util.Iterator<java.nio.ByteBuffer> getBlockIterator()
public void updateContents(byte[] contents) throws java.io.IOException
java.io.IOException
public java.io.OutputStream getOutputStream() throws java.io.IOException
java.io.IOException
public void free() throws java.io.IOException
java.io.IOException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |