- import java.io.*;
- /*
- * 缓冲字符流实现文本文件拷贝
- * 这个Demo把要复制的文件名提供出去了
- */
- public class Test1 {
- public static void copyText(String originName,String copyName)throws IOException{//originName被拷贝的文件名,copyName拷贝后的文件名
- BufferedReader br=null;//如果在try内声明,最后finally回收的时候找不到对象,所以在这声明
- BufferedWriter bw=null;
- try {
- bw=new BufferedWriter(new FileWriter(copyName,true));//buffered的装饰器模式
- br=new BufferedReader(new FileReader(originName));
- String line=null;//开始的时候犹豫了下这个String能不能去掉,发现还是不能,要不readLine又要多移动一个指针了
- while((line=br.readLine())!=null){//BufferedReader使用装饰器模式,一次读一行
- bw.write(line);//写一行
- bw.newLine();//换一行
- bw.flush();//个人一读到flush这个词就想到了冲马桶
- }
- } catch (IOException e) {
- throw new IOException("复制失败");
- }
- finally{
- try {
- if(bw!=null){
- bw.close();
- }
- } catch (IOException e) {
- throw new IOException("关闭失败");
- }
- try {
- if(br!=null){
- br.close();
- }
- } catch (IOException e) {
- throw new IOException("关闭失败");
- }
- }
-
-
-
- }
- public static void main(String[] args) throws IOException {
- copyText("bbq.txt","bbq_1.txt");
- }
- }
复制代码 |
|