- java.lang.Object
-
- java.io.InputStream
-
- ij.io.RandomAccessStream
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
public final class RandomAccessStream extends java.io.InputStreamThis class uses a memory cache to allow seeking within an InputStream. Based on the JAI MemoryCacheSeekableStream class. Can also be constructed from a RandomAccessFile, which uses less memory since the memory cache is not required.
-
-
Constructor Summary
Constructors Constructor Description RandomAccessStream(java.io.InputStream inputstream)Constructs a RandomAccessStream from an InputStream.RandomAccessStream(java.io.RandomAccessFile ras)Constructs a RandomAccessStream from an RandomAccessFile.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()intgetFilePointer()longgetLongFilePointer()intread()intread(byte[] bytes, int off, int len)doublereadDouble()floatreadFloat()voidreadFully(byte[] bytes)voidreadFully(byte[] bytes, int len)intreadInt()longreadLong()shortreadShort()voidseek(int loc)voidseek(long loc)
-
-
-
Constructor Detail
-
RandomAccessStream
public RandomAccessStream(java.io.InputStream inputstream)
Constructs a RandomAccessStream from an InputStream. Seeking backwards is supported using a memory cache.
-
RandomAccessStream
public RandomAccessStream(java.io.RandomAccessFile ras)
Constructs a RandomAccessStream from an RandomAccessFile.
-
-
Method Detail
-
getFilePointer
public int getFilePointer() throws java.io.IOException- Throws:
java.io.IOException
-
getLongFilePointer
public long getLongFilePointer() throws java.io.IOException- Throws:
java.io.IOException
-
read
public int read() throws java.io.IOException- Specified by:
readin classjava.io.InputStream- Throws:
java.io.IOException
-
read
public int read(byte[] bytes, int off, int len) throws java.io.IOException- Overrides:
readin classjava.io.InputStream- Throws:
java.io.IOException
-
readFully
public final void readFully(byte[] bytes) throws java.io.IOException- Throws:
java.io.IOException
-
readFully
public final void readFully(byte[] bytes, int len) throws java.io.IOException- Throws:
java.io.IOException
-
seek
public void seek(long loc) throws java.io.IOException- Throws:
java.io.IOException
-
seek
public void seek(int loc) throws java.io.IOException- Throws:
java.io.IOException
-
readInt
public final int readInt() throws java.io.IOException- Throws:
java.io.IOException
-
readLong
public final long readLong() throws java.io.IOException- Throws:
java.io.IOException
-
readDouble
public final double readDouble() throws java.io.IOException- Throws:
java.io.IOException
-
readShort
public final short readShort() throws java.io.IOException- Throws:
java.io.IOException
-
readFloat
public final float readFloat() throws java.io.IOException- Throws:
java.io.IOException
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Overrides:
closein classjava.io.InputStream- Throws:
java.io.IOException
-
-