`
星夜的遐想
  • 浏览: 182265 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

用Java程序实现文件夹的复制

阅读更多

文件的复制相信大家都有所了解,就不说了,下面分享下,如何将一个目录下的所有文件包括子文件夹复制到指定的目录中,下面我贴上代码,注释很清楚,你看了就应该明白了。

package testFile;
import java.io.*;
public class FileAndDirCopy {
	
	//注意:任何文件(包括图片,音乐,影视,压缩文件等等)复制都要用字节流,字符流只能复制txt文档;
	public static void main(String[] args) throws Exception {
		
		//复制开始时获得系统的当前时间
		long start =System.currentTimeMillis();//记录开始运行时间单位为毫秒;
		
		//要复制的目源(源目录)
		File from=new File("D:\\");
		
		//复制到的目录(目标目录)
		File to=new File("E:\\");
		
		System.out.println("正在复制,请稍后.......");
		
		//调用复制方法
		copy(from ,to);
		
		//复制结束时获得系统时间
		long end=System.currentTimeMillis();
		
		System.out.println("复制完成!!!");
		
		//从毫秒转成秒
		System.out.println("总费时:"+(end-start)/1000.0+"秒");
		
		
	}
	
	
	/**
	 * 
	 * @param from 要复制的目录
	 * @param to 复制到目录
	 * @throws Exception 
	 */
	public static void copy(File from,File to) throws Exception{
		
		//获得复制文件下下所有文件
		File []fs=from.listFiles();
		
		//遍历文件
		for(int i=0;i<fs.length ;i++){
			
			//如果是一个目录
			if(fs[i].isDirectory()){
				
				//获得目录的名字
				String dirname=fs[i].getName();
				
				//创建要生成目录的绝对路径
				String dirpath=to+"\\"+dirname;  
				
				File f=new File(dirpath);
				
				//创建一个目录
				f.mkdir();
				
				//调用复制文件夹方法
				copy(fs[i],f);
				
				
			}else{
				
				//获得文件名
				String filename=fs[i].getName();
				
				//获得的文件的绝对路径
				String filepath=to+"\\"+filename;
				
				//建好文件;
				File f=new File(filepath);
				
				//复制文件内容方法
				copyFile(fs[i],f); //将原文件的内容复制到新文件里来;
			}
		}
	}
	
	
	/**
	 *  //文件复制的方法
	 * @param from 要复制的文件
	 * @param to //复制到的文件
	 * @throws Exception
	 */
	public static void copyFile(File from ,File to) throws Exception{
		
		//构建一个文件输入流对象
		FileInputStream fin=new FileInputStream(from);
		
		//构建以个文件输出流对象
		FileOutputStream fout=new FileOutputStream(to);
		
		//缓冲输入流
		BufferedInputStream bin=new BufferedInputStream(fin);
		
		//缓存输出流
		BufferedOutputStream bout=new BufferedOutputStream(fout);
		
		//定义个字节数组,作为输入流和输出流的中介
		byte [] b=new byte[2048];
		
		//读入的字节长度如果为-1,说明没有内容了
	    int len=bin.read(b);
		while(len !=-1){
			
			//将字节数组写入输出流中
			bout.write(b,0,len);
			len=bin.read(b);
		}
		
		//关闭流,注意顺序
		bout.close();
		fout.close();
		bin.close();
		fin.close();
	}
	

}

 

分享到:
评论
1 楼 lily_better 2014-02-24  
用到了,很好!谢谢~

相关推荐

    java文件夹及文件复制

    java用递归实现文件及文件夹的复制,注意递归中的变量属性

    java复制文件和文件夹

    JAVA程序实现文件夹及其嵌套文件和图片等所有格式的复制

    Java程序_复制文件.jar

    一个简单的Java应用程序,用于移动复制文件,适用于学习Java IO,swing的同学借鉴。包含源代码和可执行文件。

    Java实现Linux的远程拷贝

    NULL 博文链接:https://hb-yym-929.iteye.com/blog/1062642

    java 文件夹复制 图形化界面

    周期性检查文件更新并复制修改内容,可用作备份文件的小程序用,以myeclipse项目给出

    java程序里实现ssh, scp, sftp

    在java里可以通过Ganymed SSH-2, Expect4j等实现ssh登录,由于Ganymed SSH-2是纯java实现,并且可以实现scp,sftp等,因此我们采用Ganymed SSH-2 1&gt; 下载安装 从http://code.google.com/p/ganymed-ssh-2/ 下载...

    遍历文件夹,再复制文件,Java源代码

    例如url=c:\文件夹1,而文件夹1中包含多个文件夹,现在程序要求遍历所有文件夹找出文件夹中的文件,然后原样保存到D盘的文件夹中去。原样是指只需文件夹中文件过去就可以,不用再还原文件夹。从键盘键入文件夹

    JAVA小程序:面向用户的文件复制程序

    面向用户的文件复制程序,文件夹及其文件复制,JAVA 递归,遍历所有文件,并根据所选地址进行复制

    复制文件JAVA源代码

    该小程序是用Java实现的文件复制,即将制定文件从一个文件夹下复制到另一个文件夹下。

    java合并两个文件夹内容

    将一个文件夹下所有文件复制粘贴到另一个文件夹,默认覆盖同名文件。入参的路径只能是文件夹,不能是文件。程序自带windows版jre,版本"1.8.0_131"。

    Java类文件加密专家

    传统的Java程序加密的方式多为代码混迹方式,但是无论多么复杂的混迹方式,在使用Java代码反编译程序后还是可以看到代码的逻辑结构,这样并没有彻底的保护好您的代码。 Java 类文件加密专家通过分析Class文件的结构...

    java实现的简单的软件自我复制做成jar包了

    用java输入输出流做得一个,程序的自我复制,并把程序体复制到当前目录下的所有文件夹下。没有攻击性。放心下吧。附带源码。

    java对文件的复制和删除(文件夹、文件)

    利用java语言对文件进行复制和删除操作,并且使用了单例模式,程序可正确运行,

    java窗体小程序

    3.确保你安装了MySQL数据库,版本最好为5以上,将doc文件夹下的umg.sql文件打开把里面的全部内容复制粘贴到MySQL的命令提示符窗口,来创建程序所需的数据库并初始化一条记录 4.运行src/...

    java编写的命令行文件/文件夹管理程序

    java编写的命令行文件管理程序,可对文件或文件夹进行复制,删除,重命名,加密解密,压缩解压缩等功能

    遍历文件夹中的路径复制目录文件.rar

    遍历文件夹中的路径复制,在控制台输出文件名和路径,java应用程序,将一个包含多个子目录和文件的目录复制到另外一个指定的目录下。

    Java的输入输出流实现文件的复制

    1.编写应用程序,使用文件输入输出流实现文件的复制,被拷贝的源文件和复制的目标文件由命令行参数给出。 2.编写应用程序,创建一个文件输出流,向文件中分别写入以下类型数据:int、double和字符串,然后创建一个...

     一.JAVA程序传送到手机的方法:

     刚入门的玩家我们推荐使用WAP下载或者手机互传来获得MP手机浏览器JAVA程序 (jad,jar)  从WAP上下载的游戏手机会自动安装。一般来说会有一些友好的提示如:  (1)是否安装JAVA程序?  下载下来当然是要安装的...

    java实现windows文件系统操作监控

    java实现的一个监控windows文件夹中的文件的增删改等操作,根据不同的需要修改代码,可以做成不同的功能,如文件检索,文件保护,文件自动加密等程序应用

    java源码包---java 源码 大量 实例

     Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码截图如上所示。 Java 数字签名、数字证书生成源码 2个目标文件 摘要:JAVA源码,...

Global site tag (gtag.js) - Google Analytics