public class StringReader
extends Reader
java.lang.Object | ||
↳ | java.io.Reader | |
↳ | java.io.StringReader |
源代码是字符串的字符流。
Inherited fields |
---|
From class java.io.Reader
|
Public constructors |
|
---|---|
StringReader(String s) 创建一个新的字符串阅读器。 |
Public methods |
|
---|---|
void |
close() 关闭流并释放与其关联的所有系统资源。 |
void |
mark(int readAheadLimit) 标记流中的当前位置。 |
boolean |
markSupported() 告诉这个流是否支持mark()操作。 |
int |
read() 读取一个字符。 |
int |
read(char[] cbuf, int off, int len) 将字符读入数组的一部分。 |
boolean |
ready() 告诉这个流是否准备好被读取。 |
void |
reset() 将流重置为最近的标记,或者如果从未标记过,则将其重新设置为字符串的开头。 |
long |
skip(long ns) 跳过数据流中指定数量的字符。 |
Inherited methods |
|
---|---|
From class java.io.Reader
|
|
From class java.lang.Object
|
|
From interface java.lang.Readable
|
|
From interface java.io.Closeable
|
|
From interface java.lang.AutoCloseable
|
StringReader (String s)
创建一个新的字符串阅读器。
Parameters | |
---|---|
s |
String : String providing the character stream. |
void close ()
关闭流并释放与其关联的所有系统资源。 一旦流被关闭,read(),ready(),mark()或reset()调用将会抛出一个IOException异常。 关闭以前关闭的流不起作用。
void mark (int readAheadLimit)
标记流中的当前位置。 随后调用reset()会将流重新定位到这一点。
Parameters | |
---|---|
readAheadLimit |
int : Limit on the number of characters that may be read while still preserving the mark. Because the stream's input comes from a string, there is no actual limit, so this argument must not be negative, but is otherwise ignored. |
Throws | |
---|---|
IllegalArgumentException |
If readAheadLimit is < 0 |
IOException |
If an I/O error occurs |
boolean markSupported ()
告诉这个流是否支持mark()操作。
Returns | |
---|---|
boolean |
true if and only if this stream supports the mark operation. |
int read ()
读取一个字符。
Returns | |
---|---|
int |
The character read, or -1 if the end of the stream has been reached |
Throws | |
---|---|
IOException |
If an I/O error occurs |
int read (char[] cbuf, int off, int len)
将字符读入数组的一部分。
Parameters | |
---|---|
cbuf |
char : Destination buffer |
off |
int : Offset at which to start writing characters |
len |
int : Maximum number of characters to read |
Returns | |
---|---|
int |
The number of characters read, or -1 if the end of the stream has been reached |
Throws | |
---|---|
IOException |
If an I/O error occurs |
boolean ready ()
告诉这个流是否准备好被读取。
Returns | |
---|---|
boolean |
True if the next read() is guaranteed not to block for input |
Throws | |
---|---|
IOException |
If the stream is closed |
void reset ()
将流重置为最近的标记,或者如果从未标记过,则将其重新设置为字符串的开头。
Throws | |
---|---|
IOException |
If an I/O error occurs |
long skip (long ns)
跳过数据流中指定数量的字符。 返回跳过的字符数。
即使Reader
超类的skip
方法在此情况下引发异常, ns
参数也可能为负数。 ns
会导致数据流向后跳转。 负的返回值表示向后跳转。 不可能跳过字符串的开头。
如果整个字符串已被读取或跳过,则此方法无效并始终返回0。
Parameters | |
---|---|
ns |
long : The number of characters to skip |
Returns | |
---|---|
long |
The number of characters actually skipped |
Throws | |
---|---|
IOException |
If an I/O error occurs |