package first;
/**
* 需求:使用字符流的缓冲区技术copy一个文本文件
*/
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class CopyFileByBufferedDemo {
public static void main(String args[]){
//创建缓冲区对象
BufferedReader br=null;
BufferedWriter bw=null;
try {
//实例化缓冲区对象,这里为了代码的优化,直接把缓冲区对应的流定义为匿名的
br=new BufferedReader(new FileReader("E:\\demo.txt"));
bw=new BufferedWriter(new FileWriter("D:\\demo.txt"));
String line=null;
//每次读一行,并且把它写进目标,
//由于每次读一行时并不包含行终止符,所以写的时候要加上newLine换行
//每次写完都要刷新一次
while((line=br.readLine())!=null){
bw.write(line);
bw.newLine();
bw.flush();
}
} catch (IOException e) {
e.printStackTrace();
}finally{
//关闭缓冲区
try {
if(bw!=null)
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
} |