com.sun.media.imageio.stream
public class FileChannelImageOutputStream extends ImageOutputStreamImpl
ImageOutputStream
using a
FileChannel
as the eventual data destination.
Memory mapping is used for reading and direct buffers for writing. Only methods which provide significant performance improvement with respect to the superclass implementation are overridden. Overridden methods are not commented individually unless some noteworthy aspect of the implementation must be described.
The methods of this class are not synchronized.
See Also: javax.imageio.stream.ImageOutputStream java.nio java.nio.channels.FileChannel
Constructor Summary | |
---|---|
FileChannelImageOutputStream(FileChannel channel)
Constructs a FileChannelImageOutputStream from a
FileChannel . |
Method Summary | |
---|---|
void | close()
Invokes the superclass method, writes any unwritten data, and
sets the internal reference to the source FileChannel
to null . |
long | length()
Returns the number of bytes currently in the FileChannel .
|
int | read() |
int | read(byte[] b, int off, int len) |
void | readFully(char[] c, int off, int len) |
void | readFully(short[] s, int off, int len) |
void | readFully(int[] i, int off, int len) |
void | readFully(long[] l, int off, int len) |
void | readFully(float[] f, int off, int len) |
void | readFully(double[] d, int off, int len) |
void | seek(long pos)
Invokes the superclass method, writes any unwritten data,
and sets the channel position to the supplied parameter. |
void | setByteOrder(ByteOrder networkByteOrder) |
void | write(int b) |
void | write(byte[] b, int off, int len) |
void | writeChars(char[] c, int off, int len) |
void | writeDoubles(double[] d, int off, int len) |
void | writeFloats(float[] f, int off, int len) |
void | writeInts(int[] i, int off, int len) |
void | writeLongs(long[] l, int off, int len) |
void | writeShorts(short[] s, int off, int len) |
FileChannelImageOutputStream
from a
FileChannel
. The initial position of the stream
stream is taken to be the position of the FileChannel
parameter when this constructor is invoked. The stream and flushed
positions are therefore both initialized to
channel.position()
.
Parameters: channel the destination FileChannel
.
Throws: IllegalArgumentException if channel
is
null
or is not open. IOException if a method invoked on channel
throws an IOException
.
FileChannel
to null
. The source FileChannel
is not
closed.
Throws: IOException if an error occurs.
FileChannel
.
If an IOException
is encountered when querying the
channel's size, -1L will be returned.
Returns: The number of bytes in the channel -1L to indicate unknown length.