本文共 6518 字,大约阅读时间需要 21 分钟。
字段摘要 | |
---|---|
protected | 用于同步针对此流的操作的对象。 |
构造方法摘要 | |
---|---|
protected | () 创建一个新的字符流 writer,其关键部分将同步 writer 自身。 |
protected | ( lock) 创建一个新的字符流 writer,其关键部分将同步给定的对象。 |
方法摘要 | |
---|---|
| (char c) 将指定字符添加到此 writer。 |
| ( csq) 将指定字符序列添加到此 writer。 |
| ( csq, int start, int end) 将指定字符序列的子序列添加到此 writer.Appendable。 |
abstract void | () 关闭此流,但要先刷新它。 |
abstract void | () 刷新该流的缓冲。 |
void | (char[] cbuf) 写入字符数组。 |
abstract void | (char[] cbuf, int off, int len) 写入字符数组的某一部分。 |
void | (int c) 写入单个字符。 |
void | ( str) 写入字符串。 |
void | ( str, int off, int len) 写入字符串的某一部分。 |
从类 java.lang. 继承的方法 |
---|
, , , , , , , , , , |
字段详细信息 |
---|
protected lock
构造方法详细信息 |
---|
protected Writer()
protected Writer( lock)
lock
- 要同步的对象。 方法详细信息 |
---|
public void write(int c) throws
用于支持高效单字符输出的子类应重写此方法。
c
- 指定要写入字符的 int。
- 如果发生 I/O 错误 public void write(char[] cbuf) throws
cbuf
- 要写入的字符数组
- 如果发生 I/O 错误 public abstract void write(char[] cbuf, int off, int len) throws
cbuf
- 字符数组 off
- 开始写入字符处的偏移量 len
- 要写入的字符数
- 如果发生 I/O 错误 public void write( str) throws
str
- 要写入的字符串
- 如果发生 I/O 错误 public void write( str, int off, int len) throws
str
- 字符串 off
- 相对初始写入字符的偏移量 len
- 要写入的字符数
- 如果 off 或 len 为负,或者 off+len 为负或大于给定字符串的长度
- 如果发生 I/O 错误 public append( csq) throws
以 out.append(csq) 的形式调用此方法,行为与以下调用完全相同:
out.write(csq.toString())
可能不添加整个序列,也可能添加,具体取决于字符序列 csq 的 toString 规范。例如,调用一个字符缓冲区的 toString 方法将返回一个子序列,其内容取决于缓冲区的位置和限制。
中的
csq
- 要添加的字符串序列。如果 csq 为 null,则向此 writer 添加四个字符 "null"。
- 如果发生 I/O 错误 public append( csq, int start, int end) throws
当 csq 不为 null 时,以 out.append(csq, start, end) 的形式调用此方法,行为与以下调用完全相同:
out.write(csq.subSequence(start, end).toString())
中的
csq
- 要添加子序列的字符序列。如果 csq 为 null,则添加四个字符 "null",就好像 csq 包含这些字符一样。 start
- 子序列中第一个字符的索引 end
- 子序列中最后一个字符后面的字符的索引
- 如果 start 或 end 为负,而 start 大于 end 或者 end 大于 csq.length()
- 如果发生 I/O 错误 public append(char c) throws
以 out.append(c) 的形式调用此方法,行为与以下调用完全相同:
out.write(c)
中的
c
- 要添加的 16 位字符
- 如果发生 I/O 错误 public abstract void flush() throws
如果此流的预期目标是由底层操作系统提供的一个抽象(如一个文件),则刷新该流只能保证将以前写入到流的字节传递给操作系统进行写入,但不保证能将这些字节实际写入到物理设备(如磁盘驱动器)。
中的
- 如果发生 I/O 错误 public abstract void close() throws
中的
- 如果发生 I/O 错误 类Reader
字段摘要 | |
---|---|
protected | 用于同步针对此流的操作的对象。 |
构造方法摘要 | |
---|---|
protected | () 创建一个新的字符流 reader,其重要部分将同步其自身的 reader。 |
protected | ( lock) 创建一个新的字符流 reader,其重要部分将同步给定的对象。 |
方法摘要 | |
---|---|
abstract void | () 关闭该流并释放与之关联的所有资源。 |
void | (int readAheadLimit) 标记流中的当前位置。 |
boolean | () 判断此流是否支持 mark() 操作。 |
int | () 读取单个字符。 |
int | (char[] cbuf) 将字符读入数组。 |
abstract int | (char[] cbuf, int off, int len) 将字符读入数组的某一部分。 |
int | ( target) 试图将字符读入指定的字符缓冲区。 |
boolean | () 判断是否准备读取此流。 |
void | () 重置该流。 |
long | (long n) 跳过字符。 |
从类 java.lang. 继承的方法 |
---|
, , , , , , , , , , |
字段详细信息 |
---|
protected lock
构造方法详细信息 |
---|
protected Reader()
protected Reader( lock)
lock
- 要同步的对象。 方法详细信息 |
---|
public int read( target) throws
中的
target
- 要将字符读入的缓冲区
- 如果发生 I/O 错误
- 如果目标为空 ReadOnlyBufferException
- 如果目标是一个只读缓冲区 public int read() throws
用于支持高效的单字符输入的子类应重写此方法。
- 如果发生 I/O 错误 public int read(char[] cbuf) throws
cbuf
- 目标缓冲区
- 如果发生 I/O 错误 public abstract int read(char[] cbuf, int off, int len) throws
cbuf
- 目标缓冲区 off
- 开始存储字符处的偏移量 len
- 要读取的最多字符数
- 如果发生 I/O 错误 public long skip(long n) throws
n
- 要跳过的字符数
- 如果 n
为负。
- 如果发生 I/O 错误 public boolean ready() throws
- 如果发生 I/O 错误 public boolean markSupported()
public void mark(int readAheadLimit) throws
readAheadLimit
- 在仍保留该标记的情况下,对可读取字符数量的限制。在读取这样多的字符后,尝试重置流可能会失败。
- 如果该流不支持 mark(),或者发生一些其他 I/O 错误 public void reset() throws
- 如果尚未标记流,或者该标记已失效,或者该流不支持 reset(),或者发生一些其他 I/O 错误 public abstract void close() throws
中的
- 如果发生 I/O 错误 例:
转载:http://blog.csdn.net/chaoyu168/article/details/49619499