关于制作一个可以根据目标文件夹以及指定的文件类型(图片),生成所有指定类型文件的路径的方法

一、需求描述

项目需求:想要制作一个可以根据输入一个指定的文件夹路径,可以获取指定类型的文件路径(本实例是jpg和png图片路径输出的代码),可以扫描到文件夹中子文件夹的图片并输出,同时拥有一个可以去除路径中不需要的前缀的代码案例。

二、解决办法

想必大家在搜索想要的相关案例时,大多数都是用来借鉴修改的(或者直接使用的),所以为了不让大家感到麻烦就先直接贴出一个可以运行代码,想要使用的可以直接使用,只需要按照我的类名建一个类,即可运行,因为我的这个整体代码是把所有方法写在一起了,包括主方法,大家完全可以把我这个代码当工具来用,所以话不多说直接看完整代码,详细讲解看第三部分:

import java.io.BufferedWriter;
import java.io.IOException;
import java.nio.file.*;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;

public class ImageFileExporter {
    public static void main(String[] args) {
        String folderPath = "D:\\1\\image"; // 替换为你的文件夹路径
        String prefixToRemove = "D:\\1\\"; // 要移除的前缀
        List<String> imagePaths = getImagePaths(folderPath, prefixToRemove);
        exportToTxt(imagePaths);
    }

    private static List<String> getImagePaths(String folderPath, String prefixToRemove) {
        List<String> imagePaths = new ArrayList<>();
        try {
            // 获取一级文件夹列表
            List<Path> topLevelFolders = new ArrayList<>();
            Files.list(Paths.get(folderPath)).forEach(filePath -> {
                if (Files.isDirectory(filePath)) {
                    topLevelFolders.add(filePath);
                } else if (isImageFile(filePath.toString())) {
                    // 如果当前文件夹直接包含图片文件,添加到列表中
                    String imagePath = filePath.toString();
                    if (imagePath.startsWith(prefixToRemove)) {
                        imagePath = imagePath.substring(prefixToRemove.length());
                    
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

麦芒疯狂生长!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值