利用缓冲流BufferedReader和BufferedWriter来实现文件拷贝功能 package com.zt; import java.io.BufferedReader; import j

利用缓冲流BufferedReader和BufferedWriter来实现文件拷贝功能
package com.zt;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;

public class FileCopyDemo {
          //拷贝单个文件
public  static boolean  copy(String srcpath,String desPath){
          boolean f=true;
          File file1 =new File(srcpath);
          File file2 =new File(desPath);
          BufferedReader breader =null;
          BufferedWriter bwriter =null;
          if (file1.exists()&&file1.isFile()) {
                   try {
                             FileReader reader =new FileReader(file1);
                             FileWriter writer=new FileWriter(file2);
                             breader=new BufferedReader(reader);
                             bwriter=new BufferedWriter(writer);
                             String str =breader.readLine();
                             while (str!=null) {
                                      bwriter.write(str);
                                      bwriter.newLine();
                                      str=breader.readLine();
                             }
                   } catch (Exception e) {
                             f=false;
                             e.printStackTrace();
                   }finally{
                             try {
                                      if (breader!=null) {
                                                breader.close();
                                      }
                                      if (bwriter!=null) {
                                                bwriter.close();
                                      }
                             } catch (Exception e2) {
                                      e2.printStackTrace();
                             }
                   }
          }
          return f;

}
//拷贝文件夹下的所有文件
public  static boolean CopyDir(String srcpath,String desPath) {
          boolean f=true;
          File file1 =new File(srcpath);
          File file2 =new File(desPath);
          if (file1.exists()&&file1.isDirectory()) {
                   if (!file2.exists()) {
                             file2.mkdirs();
                   }
                   File[] files =file1.listFiles();
                   for (File file : files) {
                             if (file.isFile()) {
                                      copy(file.getAbsolutePath(), desPath+"/"+file.getName());
                             }else {
                                      CopyDir(file.getAbsolutePath(), desPath+"/"+file.getName());
                             }
                   }
          }
          return f;
}
          public static void main(String[] args) {
                   //测试拷贝单个文件
          /*      String srcpath ="E:\\培训\\java\\index.jsp";
                   String desPath="E:\\培训\\java\\index22.jsp";
                   boolean  f= copy(srcpath,desPath);
                   System.err.println(f);*/

                   //测试拷贝某个文件夹下所有文件
                   String srcpath ="E:\\培训\\project2\\mvc\\20170512bookfenyemohu";
                   String desPath="F:\\肖安\\20170512bookfenyemohu";
              boolean f =     CopyDir(srcpath,desPath);
              System.out.println(f);
          }

}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值