Java创建文件夹Java复制文件复制文件夹

简介: Java创建文件夹Java复制文件复制文件夹
package com.ruoyi.modules.monitor;
 
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.UUID;
 
/**
 * @author liu pei
 * @version 1.0.0
 * @ClassName Test.java
 * @Description TODO
 * @createTime 2023年11月20日 22:03:00
 */
public class Test {
 
    public static void main(String[] args) {
 
// 需要复制的File
        File srcFile = new File("a");
// 复制目的地File
        File destFile = new File("b");
        if(!destFile.exists()){
            destFile.mkdirs();
        }
// 复制文件夹的功能
        try {
            copyFolder(srcFile, destFile);
           System.out.println("复制文件成功");
        } catch (IOException e) {
            e.printStackTrace();
            throw new RuntimeException("复制文件失败");
        }
    }
 
    /**
     * 复制文件夹
     * @param srcFile
     * @param destFile
     * @throws IOException
     */
    public static void copyFolder(File srcFile, File destFile) throws IOException {
// 判断该File是文件夹还是文件
        if (srcFile.isDirectory()) {
// 文件夹
            File newFolder = new File(destFile, srcFile.getName());
            newFolder.mkdir();
 
// 获取该File对象下的所有文件或者文件夹File对象
            File[] fileArray = srcFile.listFiles();
            for (File file : fileArray) {
                copyFolder(file, newFolder);
            }
        } else {
// 文件
            File newFile = new File(destFile, srcFile.getName());
            copyFile(srcFile, newFile);
        }
    }
 
    /**
     * 复制文件
     * @param srcFile   需要复制的File
     * @param newFile   复制目的地File
     * @throws IOException
     */
    private static void copyFile(File srcFile, File newFile) throws IOException {
        BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcFile));
        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(newFile));
 
        byte[] bys = new byte[1024];
        int len = 0;
        while ((len = bis.read(bys)) != -1) {
            bos.write(bys, 0, len);
        }
 
        bos.close();
        bis.close();
    }
 
    /**
     * 创建多级文件夹
     * @param f
     * @throws IOException
     */
    public static void createFile(File f) throws IOException{
        for(int i=0;i<5;i++){
            if(f.exists()){
                File file3=new File(f, UUID.randomUUID().toString());
                file3.createNewFile();
                System.out.println(file3.getName()+" 目录已创建");
            }
        }
    }
}


相关文章
|
3天前
|
分布式计算 Hadoop Java
hadoop java 创建文件夹 弹出窗口填写文件夹名称
hadoop java 创建文件夹 弹出窗口填写文件夹名称
32 0
|
3天前
|
Java
java判断文件夹大小
将 `/path/to/your/folder`替换为要计算大小的文件夹的实际路径。这段代码将递归计算文件夹及其子文件夹中所有文件的大小,并以MB为单位输出文件夹的大小。
25 0
|
3天前
|
Java
Java【代码 15】文件操作相关方法(获取文件、复制文件、创建文件夹、获取图片文件、写出数据到文件、清理文件夹)
Java【代码 15】文件操作相关方法(获取文件、复制文件、创建文件夹、获取图片文件、写出数据到文件、清理文件夹)
30 0
|
3天前
|
Java
Java实现1.指定关键字搜索 2.指定后缀名搜索 3.文件/文件夹复制
Java实现1.指定关键字搜索 2.指定后缀名搜索 3.文件/文件夹复制
26 1
|
6月前
|
Java
Java实现zip文件压缩:单个文件、文件夹以及文件和文件夹的压缩
Java实现zip文件压缩:单个文件、文件夹以及文件和文件夹的压缩
|
6月前
|
Java
java创建文件和文件夹
java创建文件和文件夹
|
9月前
|
Java Apache
java复制文件的4种方式及拷贝文件到另一个目录下与删除单个文件和删除整个文件夹
java复制文件的4种方式及拷贝文件到另一个目录下与删除单个文件和删除整个文件夹
448 0
|
11月前
|
Java
复制文件或文件夹Java方法
复制文件或文件夹Java方法
81 0