FileImageInputStreampublic class FileImageInputStream extends ImageInputStreamImpl 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. |
Fields Summary |
---|
private RandomAccessFile | raf |
Constructors Summary |
---|
public FileImageInputStream(File f)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.
if (f == null) {
throw new IllegalArgumentException("f == null!");
}
this.raf = new RandomAccessFile(f, "r");
| 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.
if (raf == null) {
throw new IllegalArgumentException("raf == null!");
}
this.raf = raf;
|
Methods Summary |
---|
public void | close()
super.close();
raf.close();
| public long | length()Returns the length of the underlying file, or -1
if it is unknown.
try {
checkClosed();
return raf.length();
} catch (IOException e) {
return -1L;
}
| public int | read()
checkClosed();
bitOffset = 0;
int val = raf.read();
if (val != -1) {
++streamPos;
}
return val;
| public int | read(byte[] b, int off, int len)
checkClosed();
bitOffset = 0;
int nbytes = raf.read(b, off, len);
if (nbytes != -1) {
streamPos += nbytes;
}
return nbytes;
| public void | seek(long pos)
checkClosed();
if (pos < flushedPos) {
throw new IndexOutOfBoundsException("pos < flushedPos!");
}
bitOffset = 0;
raf.seek(pos);
streamPos = raf.getFilePointer();
|
|