Package org.apache.commons.io.input
Class BoundedReader
java.lang.Object
java.io.Reader
org.apache.commons.io.input.BoundedReader
- All Implemented Interfaces:
- Closeable,- AutoCloseable,- Readable
A reader that imposes a limit to the number of characters that can be read from an underlying reader, returning EOF
 when this limit is reached, regardless of state of underlying reader.
 
 One use case is to avoid overrunning the readAheadLimit supplied to Reader.mark(int), since reading
 too many characters removes the ability to do a successful reset.
 
- Since:
- 2.5
- 
Field Summary
- 
Constructor SummaryConstructorsConstructorDescriptionBoundedReader(Reader target, int maxCharsFromTargetReader) Constructs a bounded reader
- 
Method Summary
- 
Constructor Details- 
BoundedReaderConstructs a bounded reader- Parameters:
- target- The target stream that will be used
- maxCharsFromTargetReader- The maximum number of characters that can be read from target
 
 
- 
- 
Method Details- 
closeCloses the target- Specified by:
- closein interface- AutoCloseable
- Specified by:
- closein interface- Closeable
- Specified by:
- closein class- Reader
- Throws:
- IOException- If an I/O error occurs while calling the underlying reader's close method
 
- 
markmarks the target stream- Overrides:
- markin class- Reader
- Parameters:
- readAheadLimit- The number of characters that can be read while still retaining the ability to do #reset(). Note that this parameter is not validated with respect to maxCharsFromTargetReader. There is no way to pass past maxCharsFromTargetReader, even if this value is greater.
- Throws:
- IOException- If an I/O error occurs while calling the underlying reader's mark method
- See Also:
 
- 
readReads a single character- Overrides:
- readin class- Reader
- Returns:
- -1 on EOF or the character read
- Throws:
- IOException- If an I/O error occurs while calling the underlying reader's read method
- See Also:
 
- 
readReads into an array- Specified by:
- readin class- Reader
- Parameters:
- cbuf- The buffer to fill
- off- The offset
- len- The number of chars to read
- Returns:
- the number of chars read
- Throws:
- IOException- If an I/O error occurs while calling the underlying reader's read method
- See Also:
 
- 
resetResets the target to the latest mark,- Overrides:
- resetin class- Reader
- Throws:
- IOException- If an I/O error occurs while calling the underlying reader's reset method
- See Also:
 
 
-