Package org.codehaus.groovy.util
Class CharSequenceReader
- java.lang.Object
-
- java.io.Reader
-
- org.codehaus.groovy.util.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.Serializable
Reader
implementation that can read from String, StringBuffer, StringBuilder, CharBuffer or GString.Note: Supports
mark(int)
andreset()
.Note: This class is mostly a copy from Commons IO and is intended for internal Groovy usage only. It may be deprecated and removed from Groovy at a faster pace than other classes. If you need this functionality in your Groovy programs, we recommend using the Commons IO equivalent directly.
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description CharSequenceReader(java.lang.CharSequence charSequence)
Construct a new instance with the specified character sequence.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Close resets the reader 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 sepcified number of characters into the array.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.java.lang.String
toString()
Return a String representation of the underlying character sequence.
-
-
-
Method Detail
-
close
public void close()
Close resets the reader back to the start and removes any marked position.- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in classjava.io.Reader
-
mark
public void mark(int readAheadLimit)
Mark the current position.- Overrides:
mark
in classjava.io.Reader
- Parameters:
readAheadLimit
- ignored
-
markSupported
public boolean markSupported()
Mark is supported (returns true).- Overrides:
markSupported
in classjava.io.Reader
- Returns:
true
-
read
public int read()
Read a single character.- Overrides:
read
in 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 sepcified number of characters into the array.- Specified by:
read
in 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
-
reset
public void reset()
Reset the reader to the last marked position (or the beginning if mark has not been called).- Overrides:
reset
in classjava.io.Reader
-
skip
public long skip(long n)
Skip the specified number of characters.- Overrides:
skip
in classjava.io.Reader
- Parameters:
n
- The number of characters to skip- Returns:
- The actual number of characters skipped
-
toString
public java.lang.String toString()
Return a String representation of the underlying character sequence.- Overrides:
toString
in classjava.lang.Object
- Returns:
- The contents of the character sequence
-
-