APIdia Launch Partner
Top Description Fields Constructors Methods
javax.imageio.stream

public Class FileImageInputStream

extends ImageInputStreamImpl
Class Inheritance
Imports
java.io.File, .FileNotFoundException, .IOException, .RandomAccessFile, com.sun.imageio.stream.CloseableDisposerRecord, sun.java2d.Disposer

An implementation of ImageInputStream that gets its input from a File or RandomAccessFile. The file contents are assumed to be stable during the lifetime of the object.

Field Summary

Modifier and TypeField and Description
private final CloseableDisposerRecord
disposerRecord

The DisposerRecord that closes the underlying RandomAccessFile.

private final Object
disposerReferent

The referent to be registered with the Disposer.

private RandomAccessFile
Inherited from javax.imageio.stream.ImageInputStreamImpl:
bitOffsetbyteBufbyteOrderflushedPosstreamPos

Constructor Summary

AccessConstructor and Description
public
FileImageInputStream(File
a File to read from.
f
)

Constructs a FileImageInputStream that will read from a given File.

public
FileImageInputStream(RandomAccessFile
a RandomAccessFile to read from.
raf
)

Constructs a FileImageInputStream that will read from a given RandomAccessFile.

Method Summary

Modifier and TypeMethod and Description
public void
public long

Returns:

the file length as a long, or -1.
length
()

Overrides javax.imageio.stream.ImageInputStreamImpl.length.

Implements javax.imageio.stream.ImageInputStream.length.

Returns the length of the underlying file, or -1 if it is unknown.

public int
read()

Implements abstract javax.imageio.stream.ImageInputStreamImpl.read.

Implements javax.imageio.stream.ImageInputStream.read.

Reads a single byte from the stream and returns it as an int between 0 and 255.

public int
read(byte[] b, int off, int len)

Implements abstract javax.imageio.stream.ImageInputStreamImpl.read.

Implements javax.imageio.stream.ImageInputStream.read.

Reads up to len bytes from the stream, and stores them into b starting at index off.

public void
seek(long pos)

Overrides javax.imageio.stream.ImageInputStreamImpl.seek.

Implements javax.imageio.stream.ImageInputStream.seek.

Sets the current stream position to the desired location.

Inherited from javax.imageio.stream.ImageInputStreamImpl:
checkClosedflushflushBeforegetBitOffsetgetByteOrdergetFlushedPositiongetStreamPositionisCachedisCachedFileisCachedMemorymarkreadreadBitreadBitsreadBooleanreadBytereadBytesreadCharreadDoublereadFloatreadFullyreadFullyreadFullyreadFullyreadFullyreadFullyreadFullyreadFullyreadIntreadLinereadLongreadShortreadUnsignedBytereadUnsignedIntreadUnsignedShortreadUTFresetsetBitOffsetsetByteOrderskipBytesskipBytes

Field Detail

disposerRecordback to summary
private final CloseableDisposerRecord disposerRecord

The DisposerRecord that closes the underlying RandomAccessFile.

disposerReferentback to summary
private final Object disposerReferent

The referent to be registered with the Disposer.

rafback to summary
private RandomAccessFile raf

Constructor Detail

FileImageInputStreamback to summary
public FileImageInputStream(File f) throws FileNotFoundException, IOException

Constructs a FileImageInputStream that will read from a given File.

The file contents must not change between the time this object is constructed and the time of the last call to a read method.

Parameters
f:File

a File to read from.

Exceptions
FileNotFoundException:
if f is a directory or cannot be opened for reading for any other reason.
IOException:
if an I/O error occurs.
IllegalArgumentException:
if f is null.
FileImageInputStreamback to summary
public FileImageInputStream(RandomAccessFile raf)

Constructs a FileImageInputStream that will read from a given RandomAccessFile.

The file contents must not change between the time this object is constructed and the time of the last call to a read method.

Parameters
raf:RandomAccessFile

a RandomAccessFile to read from.

Exceptions
IllegalArgumentException:
if raf is null.

Method Detail

closeback to summary
public void close() throws IOException

Overrides javax.imageio.stream.ImageInputStreamImpl.close.

Implements javax.imageio.stream.ImageInputStream.close.

Doc from javax.imageio.stream.ImageInputStream.close.

Closes the stream. Attempts to access a stream that has been closed may result in IOExceptions or incorrect behavior. Calling this method may allow classes implementing this interface to release resources associated with the stream such as memory, disk space, or file descriptors.

Exceptions
IOException:
if an I/O error occurs.
lengthback to summary
public long length()

Overrides javax.imageio.stream.ImageInputStreamImpl.length.

Implements javax.imageio.stream.ImageInputStream.length.

Returns the length of the underlying file, or -1 if it is unknown.

Returns:long

the file length as a long, or -1.

readback to summary
public int read() throws IOException

Implements abstract javax.imageio.stream.ImageInputStreamImpl.read.

Implements javax.imageio.stream.ImageInputStream.read.

Doc from javax.imageio.stream.ImageInputStreamImpl.read.

Reads a single byte from the stream and returns it as an int between 0 and 255. If EOF is reached, -1 is returned.

Subclasses must provide an implementation for this method. The subclass implementation should update the stream position before exiting.

The bit offset within the stream must be reset to zero before the read occurs.

Exceptions
IOException:
if the stream has been closed.
readback to summary
public int read(byte[] b, int off, int len) throws IOException

Implements abstract javax.imageio.stream.ImageInputStreamImpl.read.

Implements javax.imageio.stream.ImageInputStream.read.

Doc from javax.imageio.stream.ImageInputStreamImpl.read.

Reads up to len bytes from the stream, and stores them into b starting at index off. If no bytes can be read because the end of the stream has been reached, -1 is returned.

The bit offset within the stream must be reset to zero before the read occurs.

Subclasses must provide an implementation for this method. The subclass implementation should update the stream position before exiting.

Exceptions
IOException:
if an I/O error occurs.
seekback to summary
public void seek(long pos) throws IOException

Overrides javax.imageio.stream.ImageInputStreamImpl.seek.

Implements javax.imageio.stream.ImageInputStream.seek.

Doc from javax.imageio.stream.ImageInputStream.seek.

Sets the current stream position to the desired location. The next read will occur at this location. The bit offset is set to 0.

An IndexOutOfBoundsException will be thrown if pos is smaller than the flushed position (as returned by getflushedPosition).

It is legal to seek past the end of the file; a java.io.EOFException will be thrown only if a read is performed.

Exceptions
IOException:
if any other I/O error occurs.