java批量修改文件名
时间: 2024-12-01 10:12:35 浏览: 13
在Java中,批量修改文件名通常通过File类、Path类以及流式API(如Files)来操作。下面是一个简单的示例,展示如何遍历目录下的所有文件,并按照特定规则替换它们的文件名:
```java
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Path;
public class RenameFiles {
public static void batchRename(String sourceDir, String newNamePattern) {
File dir = new File(sourceDir);
if (dir.exists() && dir.isDirectory()) {
for (File file : dir.listFiles()) {
try {
Path oldPath = file.toPath();
Path newPath = oldPath.resolveSibling(oldPath.getFileName().toString().replaceAll("\\(old pattern\\)", newNamePattern));
Files.move(oldPath, newPath);
System.out.println("Successfully renamed " + file.getName() + " to " + newPath);
} catch (Exception e) {
System.err.println("Failed to rename " + file.getName() + ": " + e.getMessage());
}
}
} else {
System.out.println("Directory not found or not a directory: " + sourceDir);
}
}
// 使用方法示例
public static void main(String[] args) {
String sourceDir = "/path/to/source/directory";
String newNamePattern = "${original_name}_new_pattern";
batchRename(sourceDir, newNamePattern);
}
}
```
在这个例子中,`sourceDir`是源文件夹路径,`newNamePattern`是新文件名模式,其中`${original_name}`会被原文件名替换。这个脚本会查找并更新指定目录下所有文件的名称。
阅读全文