A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© fjl_fight 中级黑马   /  2013-5-8 11:13  /  982 人查看  /  2 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. public class Demo02 {
  2.         public static void main(String[] args) {
  3.                 // TODO Auto-generated method stub
  4.                
  5.                 try {
  6.                         copyFolder(new File("F:\\test"),new File("D:\\fest"));
  7.                 } catch (IOException e) {
  8.                         // TODO Auto-generated catch block
  9.                         e.printStackTrace();
  10.                 }
  11.                
  12.         }
  13.     /**
  14.      * 复制文件夹及其文件
  15.      * @param src
  16.      * @param dest
  17.      * @throws IOException
  18.      */
  19.         private static void copyFolder(File src, File dest) throws IOException {  
  20.                 //如果源文件是为文件夹
  21.             if (src.isDirectory()) {  
  22.                     //如果目标文件夹不存在
  23.                 if (!dest.exists()) {  
  24.                         //创建文件夹
  25.                     dest.mkdir();  
  26.                 }  
  27.                 //列出此文件夹下的文件及目录
  28.                 String files[] = src.list();  
  29.                 for (String file : files) {  
  30.                         
  31.                    //创建一以源文件src和file文件名的一个新实例
  32.                     File srcFile = new File(src, file);
  33.                    // System.out.println(srcFile);
  34.                     
  35.                     File destFile = new File(dest, file);  
  36.                    // System.out.println(destFile);
  37.                     // 递归复制  
  38.                     copyFolder(srcFile, destFile);  
  39.                 }  
  40.             } else {  //如果源文件不是为文件夹
  41.                     //取得输入流
  42.                 InputStream in = new FileInputStream(src);
  43.                 //取得输出流
  44.                 OutputStream out = new FileOutputStream(dest);  
  45.                 //声明byte数组
  46.                 byte[] buffer = new byte[1024];  
  47.          
  48.                 int length;  
  49.                  //循环读写
  50.                 while ((length = in.read(buffer)) > 0) {  
  51.                     out.write(buffer, 0, length);  
  52.                 }  
  53.                 //资源关闭
  54.                 in.close();  
  55.                 out.close();  
  56.             }  
  57.         }
  58. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
曹睿翔 + 1 神马都是浮云

查看全部评分

2 个回复

倒序浏览
这次怎么不领任务了
回复 使用道具 举报
要开始写毕业论文呢,没时间啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马