Java获取指定文件夹下目录下所有视频并复制到另一个地方

java 复制代码
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.StandardCopyOption;
 
public class VideoCopier {
 
    public static void main(String[] args) {
        // 指定源文件夹路径和目标文件夹路径
        String sourceFolderPath = "path/to/source/folder";
        String destinationFolderPath = "path/to/destination/folder";
 
        // 调用方法复制视频文件
        copyVideos(sourceFolderPath, destinationFolderPath);
    }
 
    private static void copyVideos(String sourceFolderPath, String destinationFolderPath) {
        // 创建源文件夹对象
        File sourceFolder = new File(sourceFolderPath);
 
        // 获取源文件夹下的所有文件和子文件夹
        File[] files = sourceFolder.listFiles();
 
        if (files != null) {
            for (File file : files) {
                if (file.isDirectory()) {
                    // 如果是子文件夹,则递归调用该方法处理子文件夹
                    copyVideos(file.getAbsolutePath(), destinationFolderPath);
                } else {
                    // 如果是视频文件,则复制到目标文件夹中
                    if (isVideoFile(file)) {
                        try {
                            Files.copy(file.toPath(), new File(destinationFolderPath, file.getName()).toPath(),
                                    StandardCopyOption.REPLACE_EXISTING);
                            System.out.println("成功复制视频:" + file.getName());
                        } catch (IOException e) {
                            e.printStackTrace();
                        }
                    }
                }
            }
        }
    }
 
    private static boolean isVideoFile(File file) {
        // 判断是否为视频文件,这里简单判断后缀名为常见视频格式即可,你可以根据实际需求进行修改
        String fileName = file.getName();
        String extension = fileName.substring(fileName.lastIndexOf(".") + 1).toLowerCase();
        return extension.equals("mp4") || extension.equals("avi") || extension.equals("mov");
    }
}

实现效果:

相关推荐
蛋蛋的就会顺顺的4 小时前
hot100 p0——栈,贪心算法,动态规划
java·前端·javascript·算法·leetcode·力扣
需要8265 小时前
Spring Bean 生命周期:从实例化到销毁的完整钩子
java·后端·spring
小 黄 鸡5 小时前
HashMap 面试必会知识点详解(JDK 8)
java·面试·职场和发展
伯恩bourne7 小时前
Spring Boot Bean 注册的两种方式:@Component 家族 vs @Configuration + @Bean
java·spring boot·后端
silvamux_7 小时前
curl 测试 OpenAI 兼容 API 的完整流程
java·人工智能·缓存·ai·oneapi
省钱兄--zs8 小时前
深圳24小时自助健身房软硬件解决方案实战指南与开发流程详解
java·数据仓库·spring boot·小程序·架构
顽疲8 小时前
Java vue 养老系统源码详解:月账单 care_month_bill 与 Quartz 扣费 Job 实践
java·开发语言·vue.js·vue养老·springboot养老·java养老
Wang's Blog8 小时前
Java 项目实战: 交友项目 - 安装开发工具与环境准备
java·开发语言·交友
用户21296835261688 小时前
开源了一个 Java 多智能体 LLM 框架 Baton:一个依赖,把 Agent 循环、工具调用、记忆、编排全配齐
java·llm
helmsail8 小时前
05 管理活动与选品
java