public class RandomAccessBufferedFileInputStream extends InputStream implements RandomAccessRead
InputStream access to portions of a file combined with
buffered reading of content. Start of next bytes to read can be set via seek
method.
File is accessed via RandomAccessFile and is read in byte chunks
which are cached.| Constructor and Description |
|---|
RandomAccessBufferedFileInputStream(File _file)
Create input stream instance for given file.
|
| Modifier and Type | Method and Description |
|---|---|
int |
available() |
void |
close()
Release resources that are being held.
|
long |
getFilePointer()
Deprecated.
use
getPosition() instead |
long |
getPosition()
Returns offset in file at which next byte would be read.
|
long |
length()
The total number of bytes that are available.
|
int |
read()
Read a single byte of data.
|
int |
read(byte[] b,
int off,
int len)
Read a buffer of data.
|
void |
seek(long newOffset)
Seeks to new position.
|
long |
skip(long n) |
mark, markSupported, read, resetpublic RandomAccessBufferedFileInputStream(File _file) throws FileNotFoundException, IOException
FileNotFoundExceptionIOExceptionpublic long getFilePointer()
getPosition() insteadpublic long getPosition()
getPosition in interface RandomAccessReadSequentialRead.read()
(if no more bytes are left it returns a value >= length of source)public void seek(long newOffset)
throws IOException
seek in interface RandomAccessReadnewOffset - The position to seek to.IOException - If there is an error while seeking.public int read()
throws IOException
SequentialReadread in interface SequentialReadread in class InputStreamIOException - If there is an error while reading the data.public int read(byte[] b,
int off,
int len)
throws IOException
SequentialReadread in interface SequentialReadread in class InputStreamb - The buffer to write the data to.off - Offset into the buffer to start writing.len - The amount of data to attempt to read.IOException - If there was an error while reading the data.public int available()
throws IOException
available in class InputStreamIOExceptionpublic long skip(long n)
throws IOException
skip in class InputStreamIOExceptionpublic long length()
throws IOException
RandomAccessReadlength in interface RandomAccessReadIOException - If there is an IO error while determining the
length of the data stream.public void close()
throws IOException
SequentialReadclose in interface Closeableclose in interface AutoCloseableclose in interface SequentialReadclose in class InputStreamIOException - If there is an error closing this resource.Copyright © 2002-2015 The Apache Software Foundation. All Rights Reserved.