Java实现文件批量重命名具体实例


下面是一个Java实现文件批量重命名的具体实例。这个例子假设我们要将某个目录下所有文件的名称前添加一个前缀"new_"。我们将使用Java的`File`类来遍历目录,并使用`Files`和`Paths`类来重命名文件。


import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class BatchRenameFiles {

    public static void main(String[] args) {
        // 指定要批量重命名的文件所在目录
        String directoryPath = "/path/to/your/directory";
        
        // 遍历目录
        File directory = new File(directoryPath);
        File[] files = directory.listFiles();
        
        if (files != null) {
            for (File file : files) {
                // 确保我们只处理文件,不处理目录
                if (!file.isDirectory()) {
                    // 构建新的文件名(这里是在原文件名前添加"new_")
                    String newName = "new_" + file.getName();
                    
                    // 获取文件的Path对象
                    Path oldPath = Paths.get(file.getAbsolutePath());
                    Path newPath = Paths.get(directoryPath, newName);
                    
                    // 使用Files.move方法重命名文件
                    try {
                        Files.move(oldPath, newPath);
                        System.out.println(file.getName() + " has been renamed to " + newName);
                    } catch (IOException e) {
                        System.err.println("Failed to rename " + file.getName() + ": " + e.getMessage());
                    }
                }
            }
        } else {
            System.out.println("The directory does not exist or is empty.");
        }
    }
}

请注意,你需要将`directoryPath`变量的值替换为你想要批量重命名文件的实际目录路径。

此代码段会遍历指定目录下的所有文件(不包括子目录中的文件),并为每个文件创建一个新的文件名,即在原文件名前添加"new_"前缀。然后,它使用`Files.move`方法将文件重命名。如果重命名过程中出现任何`IOException`,它会在控制台输出错误信息。