1. BufferedWriter 类
<1> 基本概念
java.io.BufferedWriter类:用于写入单个字符、字符数组,以及字符串,到输出流中。
<2> 常用的方法
方法声明 功能介绍
BufferedWriter(Writer out) 根据参数指定的引用来构造对象
BufferedWriter(Writer out, int sz) 根据参数指定的引用和缓冲区大小来构造对象
void write(int c) 写入单个字符到输出流中
void write(char[] cbuf) 将字符串数组cbuf中所有内容写入输出流中
void write(String s, int off, int len) 将参数s中下标从off开始的len个字符写入输出流中
void write(String str) 将参数指定的字符串内容,写入输出流中
void newLine() 用于写入行分隔符到输出流中
void flush() 刷新流
2. BufferedReader类 (重点)
<1> 基本概念
java.io.BufferedReader:从输入流中,读取单个字符、字符数组以及字符串。
<2> 常用的方法
方法声明 功能介绍
BufferedReader(Reader in) 根据参数指定的引用,来构造对象
BufferedReader(Reader in,int sz) 根据参数指定的引用 和 缓冲区大小来构造对象
int read() 从输入流读入单个字符,读取到末尾则返回-1,否则,返回读取到的字符内容
int read(char[] cbuf, int off, int len) 从输入流中,读取len个字符,放入数组cbuf中下标从off开始的位置上,
若读取到末尾,则返回-1,否则,返回实际读到的字符个数
int read(char[] cbuf) 从输入流中,读满整个数组cbuf
String readLine() 读取一行字符串,并返回,返回null表示读取到末尾
void close() 关闭流对象,并释放有关的资源
3. 代码示例
1 class BufferedCharCopyTest { 2 3 main(){ 4 5 BufferedReader br = null; 6 7 BufferedWriter bw = null; 8 9 10 11 try { 12 13 // 1. 创建BufferedReader类型的对象,与 d:/a.txt文件关联 14 15 br = new BufferedReader (new FileReader("d:/a.txt")); 16 17 // 2. 创建BufferedWriter类型的对象,与d:/b.txt文件关联 18 19 bw = new BufferedWriter(new FileWriter("d:/b.txt")); 20 21 // 3. 不断地从输入流中,读取一行字符串,并写入到输出流中 22 23 println("正在玩命地拷贝..."); 24 25 String str = null; 26 27 while ( ( str = br.readLine() ) != null ) { 28 29 bw.write(str); 30 31 bw.newLine(); // 当前系统中的行分隔符是: 32 33 } 34 35 println ("拷贝文件成功!"); 36 37 } catch (IOException e) { 38 39 e.printStackTrace(); 40 } finally { 41 // 4.关闭流对象并释放有关的资源 42 if (null != bw) { 43 try { 44 bw.close(); 45 } catch (IOException e) { 46 e.printStackTrace(); 47 } 48 } 49 if (null != br) { 50 try { 51 br.close(); 52 } catch (IOException e) { 53 e.printStackTrace(); 54 } 55 } 56 } 57 58 } 59 60 }