当前位置 类层次 (JDK) 所有类 (JDK) 所有域和方法 (JDK)

类 java.io.BufferedWriter

java.lang.Object
   |
   +----java.io.Writer
           |
           +----java.io.BufferedWriter

public class BufferedWriter
extends Writer

将文本写入字符输出流并缓冲字符以便能提供单字符、数组和行的高效写入。

可指定缓冲区尺寸或接受缺省尺寸。该缺省尺寸对大多数用途来说是足够的。

提供了 newLine() 方法, 它使用系统自身的行分隔符概念作为系统定义的 line.separator 特性。并非所有平台使用换行符 ('\n') 来终止行。因此最好调用该方法来终止每个输出行而非直接写换行符。

一般, Writer 直接将其输出发送给基本字符或字节流。除非请求提示输出,建议将 BufferedWriter 和任何代价高昂 write() 操作的 Writer 打包,如 FileWriters 和 OutputStreamWriters 。例如,

 PrintWriter out
   = new PrintWriter(new BufferedWriter(new FileWriter("foo.out")));
 
将 PrintWriter 的输出缓冲到文件中。若无缓冲,则每个 print() 方法的调用将字符转换成字节,然后直接写入文件中,这是非常低效的。

出现于:
JDK1.1
参见:
PrintWriter, FileWriter, OutputStreamWriter

构造子索引

BufferedWriter(Writer)
创建使用缺省尺寸输出缓冲区的缓冲字符输出流。
BufferedWriter(Writer, int)
创建使用给定尺寸输出缓冲区的新的缓冲字符输出流。

方法索引

close()
关闭流。
flush()
刷新流。
newLine()
写一个行分隔符。
write(char[], int, int)
写入字符数组的一部分。
write(int)
写入单个字符。
write(String, int, int)
写入某 String 的一部分。

构造子

BufferedWriter
 public BufferedWriter(Writer out)
创建使用缺省尺寸输出缓冲区的缓冲的字符输出流。

参数:
out - 一个 Writer
BufferedWriter
 public BufferedWriter(Writer out,
                       int sz)
创建使用给定尺寸输出缓冲区的新建缓冲字符输出流。

参数:
out - 一个 Writer
sz - 输出缓冲区尺寸, 正整数
抛出: IllegalArgumentException
若 sz <= 0

方法

write
 public void write(int c) throws IOException
写入单个字符。

抛出: IOException
如果发生一 I/O 错误。
覆盖:
Writer 中的 write
write
 public void write(char cbuf[],
                   int off,
                 int len) throws IOException
写入字符数组的一部分。

通常该方法将给定数组中的字符存储到该流的缓冲区中,需要时可将缓冲区刷新为基本输出流。若请求长度至少与该流的缓冲区同样大,则该方法将刷新缓冲区并直接将字符写入基本输出流。因此冗余的 BufferedWriter 不必复制不必要的数据。

参数:
cbuf - 一个字符数组。
off - 开始读数字符的偏移
len - 写入的字符数
抛出: IOException
如果发生一 I/O 错误。
覆盖:
Writer 中的 write
write
 public void write(String s,
                   int off,
                 int len) throws IOException
写入某 String 的一部分。

参数:
s - 待写入的 String
off - 开始读取字符的偏移量
len - 待写入的字节数
抛出: IOException
如果发生一 I/O 错误。
覆盖:
Writer 中的 write
newLine
 public void newLine() throws IOException
写一个行分隔符。行分隔符由系统特性 line.separator 定义且不必是一个单个换行 ('\n') 符。

抛出: IOException
如果发生一 I/O 错误。
flush
 public void flush() throws IOException
刷新流。

抛出: IOException
如果发生一 I/O 错误。
覆盖:
Writer 中的 flush
close
 public void close() throws IOException
关闭流。

抛出: IOException
如果发生一 I/O 错误。
覆盖:
Writer 中的 close

当前位置 类层次 (JDK) 所有类 (JDK) 所有域和方法 (JDK)