递归复制文件夹"/>
递归复制文件夹
public class Test2 {public static void main(String[] args) {copy(new File("e:/youdao"),new File("e:/test"));}private static void copy(File src, File dest) {//1、判断源目录是否存在if (src!=null&&src.exists()&&src.isDirectory()){//2、目标目录创建:e:/test/youdaoFile destOne=new File(dest,src.getName());destOne.mkdirs();//创建多级目录//提取原目录下的全部的一级文件对象File[] files=src.listFiles();//先判断是否存在一级文件对象if (files!=null&&files.length>0){//便利一级文件对象for (File file : files) {//判断是文件夹还是文件if (file.isFile()){copyFile(file,new File(destOne,file.getName()));}else {//遍历到文件夹就递归复制copy(file,destOne);}}}}}public static void copyFile(File srcFile,File destFile){try (//创建一个字节输入流管道与原文件接通InputStream is=new FileInputStream(srcFile);//创建一个字节输出流管道与目标文件接通OutputStream os=new FileOutputStream(destFile);){//字节数组来转移数据byte[] bytes=new byte[1024];int l;//记录每次读取的字节数while ((l=is.read(bytes))!=-1){os.write(bytes,0,l);}} catch (IOException e) {e.printStackTrace();}}
}
更多推荐
递归复制文件夹
发布评论