Package org.apache.commons.io.input
Class RandomAccessFileInputStream
java.lang.Object
java.io.InputStream
org.apache.commons.io.input.RandomAccessFileInputStream
- All Implemented Interfaces:
Closeable,AutoCloseable
Streams data from a
RandomAccessFile starting at its current position.- Since:
- 2.8.0
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionConstructs a new instance configured to leave the underlying file open when this stream is closed.RandomAccessFileInputStream(RandomAccessFile file, boolean closeOnClose) Constructs a new instance. -
Method Summary
Modifier and TypeMethodDescriptionintReturns an estimate of the number of bytes that can be read (or skipped over) from this input stream.longReturns the number of bytes that can be read (or skipped over) from this input stream.voidclose()Gets the underlying file.booleanReturns whether to close the underlying file when this stream is closed.intread()intread(byte[] bytes) intread(byte[] bytes, int offset, int length) private voidseek(long position) Delegates to the underlying file.longskip(long skipCount) Methods inherited from class java.io.InputStream
mark, markSupported, nullInputStream, readAllBytes, readNBytes, readNBytes, reset, skipNBytes, transferTo
-
Field Details
-
closeOnClose
private final boolean closeOnClose -
randomAccessFile
-
-
Constructor Details
-
RandomAccessFileInputStream
Constructs a new instance configured to leave the underlying file open when this stream is closed.- Parameters:
file- The file to stream.
-
RandomAccessFileInputStream
Constructs a new instance.- Parameters:
file- The file to stream.closeOnClose- Whether to close the underlying file when this stream is closed.
-
-
Method Details
-
available
Returns an estimate of the number of bytes that can be read (or skipped over) from this input stream. If there are more thanInteger.MAX_VALUEbytes available, returnInteger.MAX_VALUE.- Overrides:
availablein classInputStream- Returns:
- An estimate of the number of bytes that can be read.
- Throws:
IOException- If an I/O error occurs.
-
availableLong
Returns the number of bytes that can be read (or skipped over) from this input stream.- Returns:
- The number of bytes that can be read.
- Throws:
IOException- If an I/O error occurs.
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classInputStream- Throws:
IOException
-
getRandomAccessFile
Gets the underlying file.- Returns:
- the underlying file.
-
isCloseOnClose
public boolean isCloseOnClose()Returns whether to close the underlying file when this stream is closed.- Returns:
- Whether to close the underlying file when this stream is closed.
-
read
- Specified by:
readin classInputStream- Throws:
IOException
-
read
- Overrides:
readin classInputStream- Throws:
IOException
-
read
- Overrides:
readin classInputStream- Throws:
IOException
-
seek
Delegates to the underlying file.- Parameters:
position- SeeRandomAccessFile.seek(long).- Throws:
IOException- SeeRandomAccessFile.seek(long).- See Also:
-
skip
- Overrides:
skipin classInputStream- Throws:
IOException
-