java实现拷贝目录以及目录下的文件
2022/1/6 14:06:49
本文主要是介绍java实现拷贝目录以及目录下的文件,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
注意拷贝路径和复制路径的
用endwith()来判断目标路径的结尾
用substring()来剪切复制源路径
用三目运算符简化代码
package comstudy; import java.io.*; public class copydirall { public static void main(String [] agrs){ //copy源 File srcFile =new File("D:\\testcopy"); //copy目标 File destFile = new File("C:\\a\\b\\c\\"); //调用方法拷贝 copyDir(srcFile,destFile); } private static void copyDir(File srcFile,File destFile){ if(srcFile.isFile()){ FileInputStream in = null; FileOutputStream out = null; try { in = new FileInputStream(srcFile); String path = (destFile.getAbsolutePath().endsWith("\\") ? destFile.getAbsolutePath():destFile.getAbsolutePath()+ "\\") +srcFile.getAbsolutePath().substring(3); out = new FileOutputStream(path); byte[] bytes = new byte[1024 * 1024]; int readCount = 0; while ((readCount = in.read(bytes)) != -1){ out.write(bytes,0,readCount); } out.flush(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if(out != null){ try { out.close(); }catch (IOException e){ e.printStackTrace(); } } if(in != null){ try { in.close(); }catch (IOException e){ e.printStackTrace(); } } } return; } //获取源下面的子目录 File[] files = srcFile.listFiles(); for(File file : files){ // System.out.println(file.getAbsolutePath()); if(file.isDirectory()){ String desDir = (destFile.getAbsolutePath().endsWith("\\") ? destFile.getAbsolutePath():destFile.getAbsolutePath()+ "\\") +file.getAbsolutePath().substring(3); File newFile = new File(desDir); if(!newFile.exists()){ newFile.mkdirs(); } } copyDir(file,destFile); } } }
)来判断目标路径是否以双反斜结尾
用
这篇关于java实现拷贝目录以及目录下的文件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-24Java中定时任务实现方式及源码剖析
- 2024-11-24Java中定时任务实现方式及源码剖析
- 2024-11-24鸿蒙原生开发手记:03-元服务开发全流程(开发元服务,只需要看这一篇文章)
- 2024-11-24细说敏捷:敏捷四会之每日站会
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解