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, .StreamFinalizer, 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
protected void
finalize()

Overrides javax.imageio.stream.ImageInputStreamImpl.finalize.

Deprecated for removal since 9. Finalization has been deprecated for removal. See java.lang.Object#finalize for background information and details about migration options.
Finalizes this object prior to garbage collection.
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[]
an array of bytes to be written to.
b
,
int
the starting position within b to write to.
off
,
int
the maximum number of bytes to read.
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
a long containing the desired file pointer position.
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.
SecurityException:
if a security manager exists and does not allow read access to the file.
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.
finalizeback to summary
protected void finalize() throws Throwable

Overrides javax.imageio.stream.ImageInputStreamImpl.finalize.

Doc from javax.imageio.stream.ImageInputStreamImpl.finalize.

Deprecated

for removal since 9.

Finalization has been deprecated for removal. See java.lang.Object#finalize for background information and details about migration options.

Finalizes this object prior to garbage collection. The close method is called to close any open input source. This method should not be called from application code.

Annotations
@Deprecated
since:9
forRemoval:true
@SuppressWarnings:removal
Exceptions
Throwable:
if an error occurs during superclass finalization.
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.

Returns:int

the value of the next byte in the stream, or -1 if EOF is reached.

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.

Parameters
b:byte[]

an array of bytes to be written to.

off:int

the starting position within b to write to.

len:int

the maximum number of bytes to read.

Returns:int

the number of bytes actually read, or -1 to indicate EOF.

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.

Parameters
pos:long

a long containing the desired file pointer position.

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