Class CharSequenceReader
- java.lang.Object
-
- java.io.Reader
-
- org.apache.commons.io.input.CharSequenceReader
-
- All Implemented Interfaces:
Closeable
,Serializable
,AutoCloseable
,Readable
public class CharSequenceReader extends Reader implements Serializable
Reader
implementation that can read from String, StringBuffer, StringBuilder or CharBuffer.- Since:
- 1.4
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description CharSequenceReader(CharSequence charSequence)
Constructs a new instance with the specified character sequence.CharSequenceReader(CharSequence charSequence, int start)
Constructs a new instance with a portion of the specified character sequence.CharSequenceReader(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 void
close()
Close resets the file back to the start and removes any marked position.void
mark(int readAheadLimit)
Mark the current position.boolean
markSupported()
Mark is supported (returns true).int
read()
Read a single character.int
read(char[] array, int offset, int length)
Read the specified number of characters into the array.boolean
ready()
Tells whether this stream is ready to be read.void
reset()
Reset the reader to the last marked position (or the beginning if mark has not been called).long
skip(long n)
Skip the specified number of characters.String
toString()
Return a String representation of the underlying character sequence.-
Methods inherited from class java.io.Reader
nullReader, read, read, transferTo
-
-
-
-
Constructor Detail
-
CharSequenceReader
public CharSequenceReader(CharSequence charSequence)
Constructs a new instance with the specified character sequence.- Parameters:
charSequence
- The character sequence, may benull
-
CharSequenceReader
public CharSequenceReader(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
IndexOutOfBoundsException
to 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 benull
start
- The start index in the character sequence, inclusive- Throws:
IllegalArgumentException
- if the start index is negative- Since:
- 2.7
-
CharSequenceReader
public CharSequenceReader(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
IndexOutOfBoundsException
to 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 benull
start
- The start index in the character sequence, inclusiveend
- The end index in the character sequence, exclusive- Throws:
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.
-
ready
public boolean ready()
Tells whether this stream is ready to be read.
-
mark
public void mark(int readAheadLimit)
Mark the current position.
-
markSupported
public boolean markSupported()
Mark is supported (returns true).- Overrides:
markSupported
in classReader
- Returns:
true
-
read
public int read()
Read a single character.
-
read
public int read(char[] array, int offset, int length)
Read the specified number of characters into the array.
-
reset
public void reset()
Reset the reader to the last marked position (or the beginning if mark has not been called).
-
skip
public long skip(long n)
Skip the specified number of characters.
-
-