Java代码实现获取一个文件夹下所有文件名并输出到指定的txt文件中

当一个文件夹中文件过多时,且需要知道次序跟名称时,下面用一段Java代码来实现:

输出一个文件夹内所有的文件名并在前面标上序号,输出到一个文本文件中

最终效果

序号+文件名列表

完整代码

java 复制代码
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class DirectoryLister {
    public static void main(String[] args) {
        // 文件夹路径,请根据实际情况修改
        String directoryPath = "E:\\音乐资源售卖";
        // 输出文件的路径
        String outputPath = "E:\\输出文件的路径.txt";

        File directory = new File(directoryPath);
        if (!directory.exists() || !directory.isDirectory()) {
            System.out.println("指定的路径不是有效的目录!");
            return;
        }

        try (PrintWriter writer = new PrintWriter(new FileWriter(outputPath))) {
            File[] files = directory.listFiles();
            if (files != null) {
                for (int i = 0; i < files.length; i++) {
                    // 判断是否为文件,避免列出子目录
                    if (files[i].isFile()) {
                        // 写入序号和文件名,每个文件名占一行
                        writer.println((i + 1) + ". " + files[i].getName());
                    }
                }
            } else {
                System.out.println("目录为空!");
            }
            System.out.println("文件名已成功写入到 " + outputPath);
        } catch (IOException e) {
            System.err.println("写入文件时发生错误: " + e.getMessage());
        }
    }
}
相关推荐
知守观26 分钟前
同一个团队两套分包:DDD 四层落地后,domain 层最大的类还是 5885 行
java·后端·领域驱动设计
文丑颜不良啊42 分钟前
LeetCode2541~2560题目解析
java·leetcode
瑞雪兆丰年兮1 小时前
JavaWeb-day11-SpringBootWeb案例(文件上传)
java·运维·服务器·javaweb·oss
Highcharts.js1 小时前
Highcharts智能数据分析平台Orbit 多语言配置技术文档
java·前端·javascript·highcharts·orbit·智能数据分析·设置文档
Rain的Java大神之路2 小时前
设计一套生产级 API 接口:从契约、安全、幂等到限流,我踩过的坑都在这了
java·后端·面试
SimonKing2 小时前
零配置也能白嫖前沿大模型!dsh-our-free-model插件真香警告
java·后端·程序员
草莓熊Lotso2 小时前
【C++ 基于微服务的即时通讯系统】文件存储子服务实战:UUID生成、文件IO封装与全接口单元测试
开发语言·网络·数据库·c++·微服务·架构·单元测试
nice_lcj5202 小时前
【从零理解 Spring AI · 15】让检索更准:先宽召回,再精排序
java·后端·rag·spring ai·ai应用开发·检索优化·重排序
huaqianzkh3 小时前
WinForm C#:循环修改控件UI闪烁卡顿?SuspendLayout / ResumeLayout 与 BeginUpdate 优化
开发语言·ui·c#
杨凯凡3 小时前
Spring Boot 链路追踪实战:Micrometer、TraceId 与异步线程上下文传播
java·spring boot·后端