java.lang.Object java.io.Reader java.io.StringReader
public class StringReader
其源为一个字符串的字符流。
字段摘要 |
---|
从类 java.io.Reader 继承的字段 |
---|
lock |
构造方法摘要 | |
---|---|
StringReader(String s) 创建一个新字符串 reader。 |
方法摘要 | |
---|---|
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) 跳过流中指定数量的字符。 |
从类 java.io.Reader 继承的方法 |
---|
read, read |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
public StringReader(String s)
s
- 提供字符流的字符串。
方法详细信息 |
---|
public int read() throws IOException
IOException
- 如果发生 I/O 错误
public int read(char[] cbuf, int off, int len) throws IOException
cbuf
- 目标缓冲区
off
- 开始写入字符处的偏移量
len
- 要读取的最多字符数
IOException
- 如果发生 I/O 错误
public long skip(long ns) throws IOException
ns
参数可能为负数,即便 Reader
超类的 skip
方法在此情况下会抛出一个异常。ns
为负值导致此流向后跳读。负返回值指示向后跳读。向后跳读不可能超过字符串的开头。
如果读取或跳读了整个字符串,则此方法无效且始终返回 0。
ns
- 要跳过的字符数
IOException
- 如果发生 I/O 错误
public boolean ready() throws IOException
IOException
- 如果该流已关闭
public boolean markSupported()
Reader
中的
markSupported
public void mark(int readAheadLimit) throws IOException
readAheadLimit
- 在仍保留该标记的情况下,对可读取字符数量的限制。由于该流的输入来自一个字符串,不存在实际的限制,因此,此参数决不能为负数,否则将被忽略。
IllegalArgumentException
- 如果 readAheadLimit < 0
IOException
- 如果发生 I/O 错误
public void reset() throws IOException
IOException
- 如果发生 I/O 错误
public void close()