ITPub博客

首页 > 应用开发 > IT综合 > 利用java本地拷贝文件及文件夹 (转)

利用java本地拷贝文件及文件夹 (转)

原创 IT综合 作者:amyz 时间:2007-08-15 17:05:51 0 删除 编辑
利用java本地拷贝文件及文件夹 (转)[@more@]

我看到有许多朋友在论坛问这样的问题:

如何实现文件夹对文件夹的拷贝呢?如果文件夹里还有文件夹怎么办呢?

接下来我就将我的方法演示给一些初学者,希望能够帮助你们!

/*
 * CopyRight by http://www.designac.org
 */
package copyfile;
import Java.io.*;
/**
 * @author Administrator
 *
 * Class Function:
 */
public class copyDirectory {
 public static void main(String args[]) throws IOException {
 String url1="C:/DOWNLOADs/kele";
 String url2="d:/java/copyfile/copy";
 (new File(url2)).mkdirs();
 File[] file=(new File(url1)).listFiles();
 for(int i=0;i if(file[i].isfile()){
 FileInputStream input=new FileInputStream(file[i]);
 FileOutputStream output=new FileOutputStream(url2+"/"+file[i].getName());
 byte[] b=new byte[1024*5];
 int len;
 while((len=input.read(b))!=-1){
 output.write(b,0,len);
 }
 output.flush();
 output.close();
 input.close();
 }
 if(file[i].isDirectory()){
 copyDirectiory(url2+"/"+file[i].getName(),url1+"/"+file[i].getName());
 }
 }
 }
 public static void copyDirectiory(String file1,String file2) throws IOException{
 (new File(file1)).mkdirs();
 File[] file=(new File(file2)).listFiles();
 for(int i=0;i if(file[i].isFile()){
 FileInputStream input=new FileInputStream(file[i]);
 FileOutputStream output=new FileOutputStream(file1+"/"+file[i].getName());
 byte[] b=new byte[1024*5];
 int len;
 while((len=input.read(b))!=-1){
 output.write(b,0,len);
 }
 output.flush();
   output.close();
 input.close();
 }
 if(file[i].isDirectory()){
 copyDirectiory(file1+"/"+file[i].getName(),file2+"/"+file[i].getName());
 }
 
 }

 }
}

 


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10752019/viewspace-958834/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    3982
  • 访问量
    7896301