1. 字符流缓冲流之复制文本文件案例
需求:把当前项目目录下的a.txt内容复制到当前项目目录下的b.txt中
数据源:
a.txt -- 读取数据 -- 字符转换流 -- InputStreamReader -- FileReader -- BufferedReader
目的地:
b.txt -- 写出数据 -- 字符转换流 -- OutputStreamWriter -- FileWriter -- BufferedWriter
2. 代码示例:
1 package cn.itcast_06; 2 3 import java.io.BufferedReader; 4 import java.io.BufferedWriter; 5 import java.io.FileReader; 6 import java.io.FileWriter; 7 import java.io.IOException; 8 9 /* 10 * 需求:把当前项目目录下的a.txt内容复制到当前项目目录下的b.txt中 11 * 12 * 数据源: 13 * a.txt -- 读取数据 -- 字符转换流 -- InputStreamReader -- FileReader -- BufferedReader 14 * 目的地: 15 * b.txt -- 写出数据 -- 字符转换流 -- OutputStreamWriter -- FileWriter -- BufferedWriter 16 */ 17 public class CopyFileDemo { 18 public static void main(String[] args) throws IOException { 19 // 封装数据源 20 BufferedReader br = new BufferedReader(new FileReader("a.txt")); 21 // 封装目的地 22 BufferedWriter bw = new BufferedWriter(new FileWriter("b.txt")); 23 24 // 两种方式其中的一种:一次读写一个字符数组 25 char[] chs = new char[1024]; 26 int len = 0; 27 while ((len = br.read(chs)) != -1) { 28 bw.write(chs, 0, len); 29 bw.flush(); 30 } 31 32 // 释放资源 33 bw.close(); 34 br.close(); 35 } 36 }
运行效果,如下: