Class CharSequenceReader
- java.lang.Object
 - 
- java.io.Reader
 - 
- org.apache.commons.io.input.CharSequenceReader
 
 
 
- 
- All Implemented Interfaces:
 java.io.Closeable,java.io.Serializable,java.lang.AutoCloseable,java.lang.Readable
public class CharSequenceReader extends java.io.Reader implements java.io.SerializableReaderimplementation that can read from String, StringBuffer, StringBuilder or CharBuffer.Note: Supports
mark(int)andreset().Deprecating Serialization
Serialization is deprecated and will be removed in 3.0.
- Since:
 - 1.4
 - See Also:
 - Serialized Form
 
 
- 
- 
Constructor Summary
Constructors Constructor Description CharSequenceReader(java.lang.CharSequence charSequence)Constructs a new instance with the specified character sequence.CharSequenceReader(java.lang.CharSequence charSequence, int start)Constructs a new instance with a portion of the specified character sequence.CharSequenceReader(java.lang.CharSequence charSequence, int start, int end)Constructs a new instance with a portion of the specified character sequence. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Close resets the file back to the start and removes any marked position.voidmark(int readAheadLimit)Mark the current position.booleanmarkSupported()Mark is supported (returns true).intread()Read a single character.intread(char[] array, int offset, int length)Read the specified number of characters into the array.booleanready()Tells whether this stream is ready to be read.voidreset()Reset the reader to the last marked position (or the beginning if mark has not been called).longskip(long n)Skip the specified number of characters.java.lang.StringtoString()Gets a String representation of the underlying character sequence. 
 - 
 
- 
- 
Constructor Detail
- 
CharSequenceReader
public CharSequenceReader(java.lang.CharSequence charSequence)
Constructs a new instance with the specified character sequence.- Parameters:
 charSequence- The character sequence, may benull
 
- 
CharSequenceReader
public CharSequenceReader(java.lang.CharSequence charSequence, int start)Constructs a new instance with a portion of the specified character sequence.The start index is not strictly enforced to be within the bounds of the character sequence. This allows the character sequence to grow or shrink in size without risking any
IndexOutOfBoundsExceptionto be thrown. Instead, if the character sequence grows smaller than the start index, this instance will act as if all characters have been read.- Parameters:
 charSequence- The character sequence, may benullstart- The start index in the character sequence, inclusive- Throws:
 java.lang.IllegalArgumentException- if the start index is negative- Since:
 - 2.7
 
 
- 
CharSequenceReader
public CharSequenceReader(java.lang.CharSequence charSequence, int start, int end)Constructs a new instance with a portion of the specified character sequence.The start and end indexes are not strictly enforced to be within the bounds of the character sequence. This allows the character sequence to grow or shrink in size without risking any
IndexOutOfBoundsExceptionto be thrown. Instead, if the character sequence grows smaller than the start index, this instance will act as if all characters have been read; if the character sequence grows smaller than the end, this instance will use the actual character sequence length.- Parameters:
 charSequence- The character sequence, may benullstart- The start index in the character sequence, inclusiveend- The end index in the character sequence, exclusive- Throws:
 java.lang.IllegalArgumentException- if the start index is negative, or if the end index is smaller than the start index- Since:
 - 2.7
 
 
 - 
 
- 
Method Detail
- 
close
public void close()
Close resets the file back to the start and removes any marked position.- Specified by:
 closein interfacejava.lang.AutoCloseable- Specified by:
 closein interfacejava.io.Closeable- Specified by:
 closein classjava.io.Reader
 
- 
mark
public void mark(int readAheadLimit)
Mark the current position.- Overrides:
 markin classjava.io.Reader- Parameters:
 readAheadLimit- ignored
 
- 
markSupported
public boolean markSupported()
Mark is supported (returns true).- Overrides:
 markSupportedin classjava.io.Reader- Returns:
 true
 
- 
read
public int read()
Read a single character.- Overrides:
 readin classjava.io.Reader- Returns:
 - the next character from the character sequence or -1 if the end has been reached.
 
 
- 
read
public int read(char[] array, int offset, int length)Read the specified number of characters into the array.- Specified by:
 readin classjava.io.Reader- Parameters:
 array- The array to store the characters inoffset- The starting position in the array to storelength- The maximum number of characters to read- Returns:
 - The number of characters read or -1 if there are no more
 
 
- 
ready
public boolean ready()
Tells whether this stream is ready to be read.- Overrides:
 readyin classjava.io.Reader- Returns:
 trueif more characters from the character sequence are available, orfalseotherwise.
 
- 
reset
public void reset()
Reset the reader to the last marked position (or the beginning if mark has not been called).- Overrides:
 resetin classjava.io.Reader
 
- 
skip
public long skip(long n)
Skip the specified number of characters.- Overrides:
 skipin classjava.io.Reader- Parameters:
 n- The number of characters to skip- Returns:
 - The actual number of characters skipped
 
 
- 
toString
public java.lang.String toString()
Gets a String representation of the underlying character sequence.- Overrides:
 toStringin classjava.lang.Object- Returns:
 - The contents of the character sequence
 
 
 - 
 
 -