Java实现本地文件批量重命名的示例代码

 更新时间:2023年10月23日 11:18:41   作者:来自宇宙的曹先生  
本文主要介绍了Java实现本地文件批量重命名的示例代码,主要步骤为获取指定目录下的所有文件,对每个文件进行修改,将修改后的文件名赋给该文件,具有一定的参考价值,感兴趣的可以了解一下

1. 批量重命名

import java.io.IOException;
import java.nio.file.*;
import java.nio.file.attribute.BasicFileAttributes;
import java.util.stream.Stream;
/**
 * @author 曹见朋
 * @create 2023-10-23-10:02
 */
public class FileBatchRename {
    public static void main(String[] args) {
        // 设置目录路径
        String directoryPath = "D:/example";

        // 构建文件路径
        Path directory = Paths.get(directoryPath);

        try {
            // 获取目录下的所有文件
            Stream<Path> files = Files.list(directory);

            // 遍历所有文件并重命名
            files.forEach(file -> {
                try {
                    // 获取文件的名称
                    String fileName = file.getFileName().toString();

                    // 新的文件名(可以按需修改)
                    String newFileName = "new_" + fileName;

                    // 构建新文件路径
                    Path newFilePath = directory.resolve(newFileName);

                    // 执行文件重命名
                    Files.move(file, newFilePath, StandardCopyOption.REPLACE_EXISTING);

                    System.out.println("Renamed: " + fileName + " to " + newFileName);
                } catch (IOException e) {
                    e.printStackTrace();
                }
            });

            System.out.println("All files have been renamed.");

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

在上述代码中,我们首先指定了要重命名文件的目录路径。然后,我们使用NIO的Files.list()方法列出目录中的所有文件,并遍历这些文件。在遍历的过程中,可以根据需要修改新的文件名,然后使用Files.move()方法执行文件重命名操作。文件将被重命名为新的名称,然后输出重命名的结果。

2. 批量修改扩展名

package com.cjp.bio;
import java.io.File;

/**
 * @author 曹见朋
 * @create 2023-10-23-9:02
 */
public class BatchRenameFiles {
    public static void main(String[] args) {
        // 指定目录路径
        String directoryPath = "D:/NIO/";

        // 旧的文件扩展名
        String oldExtension = ".html";

        // 新的文件扩展名
        String newExtension = ".txt";

        // 获取目录下的所有文件
        File directory = new File(directoryPath);
        File[] files = directory.listFiles();

        if (files != null) {
            for (File file : files) {
                if (file.isFile() && file.getName().endsWith(oldExtension)) {
                    // 构建新文件名
                    String newName = file.getName().replace(oldExtension, newExtension);

                    // 创建新文件对象
                    File newFile = new File(directoryPath + newName);

                    // 重命名文件
                    if (file.renameTo(newFile)) {
                        System.out.println("Renamed " + file.getName() + " to " + newName);
                    } else {
                        System.err.println("Error renaming " + file.getName());
                    }
                }
            }
        } else {
            System.err.println("Directory not found.");
        }
    }
}

到此这篇关于Java实现本地文件批量重命名的示例代码的文章就介绍到这了,更多相关Java 本地文件批量重命名内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

相关文章

  • Java之JSF框架案例详解

    Java之JSF框架案例详解

    这篇文章主要介绍了Java之JSF框架案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • 通过Maven进行jedis连接redis的实现

    通过Maven进行jedis连接redis的实现

    这篇文章主要介绍了通过Maven进行jedis连接redis的实现,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • 在Java中如何决定使用 HashMap 还是 TreeMap

    在Java中如何决定使用 HashMap 还是 TreeMap

    这篇文章主要介绍了在Java中如何决定使用 HashMap 还是 TreeMap,很多朋友对这样的问题很迷茫,下面小编给大家带来一篇文章帮助大家了解,需要的朋友可以参考下
    2019-10-10
  • mybatisPlus更新策略导致更新失败问题

    mybatisPlus更新策略导致更新失败问题

    这篇文章主要介绍了mybatisPlus更新策略导致更新失败问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • java子线程解决获取主线程的request对象问题

    java子线程解决获取主线程的request对象问题

    这篇文章主要介绍了java子线程解决获取主线程的request对象问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • 一文带你理解@RefreshScope注解实现动态刷新原理

    一文带你理解@RefreshScope注解实现动态刷新原理

    RefeshScope这个注解想必大家都用过,在微服务配置中心的场景下经常出现,他可以用来刷新Bean中的属性配置,那大家对他的实现原理了解吗,它为什么可以做到动态刷新呢,所以本文小编将给大家详细介绍@RefreshScope注解实现动态刷新原理
    2023-07-07
  • Java如何获取主机的基本信息详解

    Java如何获取主机的基本信息详解

    最近遇到一个工作需求,上网查了一下怎样在Java中获取本机的ip和主机名,所以下面这篇文章主要给大家介绍了关于Java如何获取主机的基本信息,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2021-12-12
  • java实现将ftp和http的文件直接传送到hdfs

    java实现将ftp和http的文件直接传送到hdfs

    前面几篇文章,我们已经做了很好的铺垫了,几个要用到的工具我们都做了出来,本文就是将他们集合起来,说下具体的用法,小伙伴们可以参考下。
    2015-03-03
  • Javaweb请求转发及重定向实现详解

    Javaweb请求转发及重定向实现详解

    这篇文章主要介绍了Javaweb请求转发及重定向实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • Java 数组差集实例代码

    Java 数组差集实例代码

    这篇文章主要介绍了Java 数组差集实例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09

最新评论