Java 批量复制和移动文件!

Java 文件处理的最佳实践:批量复制和移动文件

在 Java 项目中,文件处理是一个常见的需求,特别是在需要批量复制或移动文件时。本文将深入探讨如何使用 Java 处理文件,特别是利用 NIO(New Input/Output)包来简化文件操作。结尾附源文件!
在这里插入图片描述

一、文件工具类的实现

下面是一个 FileUtil 工具类,提供了一系列文件处理功能,如获取文件扩展名、判断文件是否存在、输出文件、移动和复制目录等。

1. 移动文件或目录

public static void moveDirectoryContents(String sourceDirectory, String targetDirectory, List<String> whiteList) throws IOException {
   
   
    Path sourcePath = Paths.get(sourceDirectory);
    Path targetPath = Paths.get(targetDirectory);

    // 确保源存在
    if (!Files.exists(sourcePath)) {
   
   
        throw new IOException("源路径不存在: " + sourceDirectory);
    }

    // 如果源是文件
    if (Files.isRegularFile(sourcePath)) {
   
   
        Files.move(sourcePath, targetPath, StandardCopyOption.REPLACE_EXISTING);
        return;
    }

    // 处理目录移动逻辑
    try {
   
   
        Files.walk(sourcePath)
                .filter(path -> !path.equals(sourcePath))
                .filter(path -> whiteList.stream().noneMatch(item -> path.toString().conta
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值