您当前的位置: 首页 >  Java

梁云亮

暂无认证

  • 2浏览

    0关注

    1211博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Java IO 文件夹复制

梁云亮 发布时间:2020-01-02 16:26:35 ,浏览量:2

相关博客: Java IO

理论:

1、创建复制后的目录 2、创建文件

代码
public class FolderCopy {
	
	private static String sourceStr = "E:\\apache-tomcat-9.0.10\\apache-tomcat-9.0.10";
	private static String aimStr = "E:\\hehe";

	public static void main(String[] args) {
		File aim = new File(aimStr);
		if (!aim.exists()) {
			aim.mkdirs();
		}
		fun(new File(sourceStr), aim);
	}
	
	public static void fileCopy(File sources, File aim) {// psvm
		try (FileInputStream fis = new FileInputStream(sources); 
		     FileOutputStream fos = new FileOutputStream(aim);) {
			byte[] buf = new byte[256];
			int len = -1;
			while ((len = fis.read(buf)) != -1) {
				fos.write(buf, 0, len);
			}
		} catch (Exception e) {
		}
	}

	public static void fun(File file, File aim) {
		File[] files = file.listFiles();
		for (File item : files) {
			if (item.isFile()) {// 如果是文件,复制文件
				File source = item.getAbsoluteFile();
				String replace = item.getAbsolutePath().replace(sourceStr, aimStr);
				// 文件具体复制
				fileCopy(source, new File(replace));
			} else {// 如果是目录,创建路径
				String path = aim.getAbsolutePath() + "\\" + item.getName();
				File p = new File(path);
				if (!p.exists()) {
					p.mkdirs();
				}
				fun(item, p); //递归 
			}
		}
	}

}
关注
打赏
1665409997
查看更多评论
立即登录/注册

微信扫码登录

0.0422s