public abstract class Writer extends Object implements Appendable, Closeable, Flushable
Writer
, BufferedWriter
, CharArrayWriter
, FilterWriter
, OutputStreamWriter
, FileWriter
, PipedWriter
, PrintWriter
, StringWriter
, Reader
Modifier | Constructor and Description |
---|---|
protected |
Writer()
创建一个新的人物流作家,其关键部分将在作者本身上同步。
|
protected |
Writer(Object lock)
创建一个新的字符流写入器,其关键部分将在给定对象上进行同步。
|
Modifier and Type | Method and Description |
---|---|
Writer |
append(char c)
将指定的字符附加到此作者。
|
Writer |
append(CharSequence csq)
将指定的字符序列附加到此作者。
|
Writer |
append(CharSequence csq, int start, int end)
将指定字符序列的子序列附加到此作者。
|
abstract void |
close()
关闭流,先刷新。
|
abstract void |
flush()
刷新流。
|
void |
write(char[] cbuf)
写入一个字符数组。
|
abstract void |
write(char[] cbuf, int off, int len)
写入字符数组的一部分。
|
void |
write(int c)
写一个字符
|
void |
write(String str)
写一个字符串
|
void |
write(String str, int off, int len)
写一个字符串的一部分。
|
protected Object lock
protected Writer()
protected Writer(Object lock)
lock
- 要同步的对象
public void write(int c) throws IOException
旨在支持高效单字符输出的子类应该覆盖此方法。
c
- int指定要写入的字符
IOException
- 如果发生I / O错误
public void write(char[] cbuf) throws IOException
cbuf
- 要写入的字符数组
IOException
- 如果发生I / O错误
public abstract void write(char[] cbuf, int off, int len) throws IOException
cbuf
-
cbuf
数组
off
- 从中开始编写字符的偏移量
len
- 要写入的
len
数
IOException
- 如果发生I / O错误
public void write(String str) throws IOException
str
- 要写入的字符串
IOException
- 如果发生I / O错误
public void write(String str, int off, int len) throws IOException
str
- 字符串
off
- 开始编写字符的偏移量
len
- 要写入的
len
数
IndexOutOfBoundsException
- 如果
off为负数,或
len为负数,或
off+len为负数或大于给定字符串的长度
IOException
- 如果发生I / O错误
public Writer append(CharSequence csq) throws IOException
调用此方法的形式out.append(csq)的行为方式与调用完全相同
out.write(csq.toString())
取决于toString字符序列csq本说明书中,整个序列可以不追加。 例如,调用字符缓冲区的toString方法将返回一个子序列,其内容取决于缓冲区的位置和限制。
append
在界面
Appendable
csq
- 要追加的字符序列。
如果csq是null ,那么四个字符"null"被附加到该写入器。
IOException
- 如果发生I / O错误
public Writer append(CharSequence csq, int start, int end) throws IOException
形式的这种方法的调用时out.append(csq, start, end) csq是完全相同的方式调用不null的行为
out.write(csq.subSequence(start, end).toString())
append
在界面
Appendable
csq
- 追加子序列的字符序列。
如果csq是null ,则会附加字符 ,如果csq包含四个字符"null" 。
start
- 子序列中第一个字符的索引
end
- 子序列中最后一个字符后面的字符的索引
IndexOutOfBoundsException
- 如果
start或
end为负数,则
start大于
end ,或
end大于
csq.length()
IOException
- 如果发生I / O错误
public Writer append(char c) throws IOException
对这种形式out.append(c)的这种方法的调用与调用的方式完全相同
out.write(c)
append
在界面
Appendable
c
- 要追加的16位字符
IOException
- 如果发生I / O错误
public abstract void flush() throws IOException
如果此流的预期目标是由底层操作系统(例如文件)提供的抽象,那么刷新流仅保证先前写入流的字节传递到操作系统进行写入; 它并不保证它们实际上被写入物理设备,如磁盘驱动器。
flush
在界面
Flushable
IOException
- 如果发生I / O错误
public abstract void close() throws IOException
close
在界面
Closeable
close
在界面
AutoCloseable
IOException
- 如果发生I / O错误