java.lang.Object
java.io.InputStream
ij.io.RandomAccessStream
- All Implemented Interfaces:
Closeable,AutoCloseable
This 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
ConstructorsConstructorDescriptionRandomAccessStream(InputStream inputstream) Constructs a RandomAccessStream from an InputStream.Constructs a RandomAccessStream from an RandomAccessFile. -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()intlongintread()intread(byte[] bytes, int off, int len) final doublefinal floatfinal voidreadFully(byte[] bytes) final voidreadFully(byte[] bytes, int len) final intreadInt()final longreadLong()final shortvoidseek(int loc) voidseek(long loc) Methods inherited from class java.io.InputStream
available, mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, skipNBytes, transferTo
-
Constructor Details
-
RandomAccessStream
Constructs a RandomAccessStream from an InputStream. Seeking backwards is supported using a memory cache. -
RandomAccessStream
Constructs a RandomAccessStream from an RandomAccessFile.
-
-
Method Details
-
getFilePointer
- Throws:
IOException
-
getLongFilePointer
- Throws:
IOException
-
read
- Specified by:
readin classInputStream- Throws:
IOException
-
read
- Overrides:
readin classInputStream- Throws:
IOException
-
readFully
- Throws:
IOException
-
readFully
- Throws:
IOException
-
seek
- Throws:
IOException
-
seek
- Throws:
IOException
-
readInt
- Throws:
IOException
-
readLong
- Throws:
IOException
-
readDouble
- Throws:
IOException
-
readShort
- Throws:
IOException
-
readFloat
- Throws:
IOException
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classInputStream- Throws:
IOException
-