java 快速 修改多个文件夹 内文件后缀
时间: 2024-09-13 20:10:02 浏览: 47
在Java中,快速修改多个文件夹内文件的后缀可以使用递归函数结合java.io.File和java.nio.file包提供的功能。以下是一个简单的示例,展示如何遍历指定目录及其所有子目录,并替换文件名的后缀:
```java
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class FileSuffixChanger {
public static void main(String[] args) {
String rootDirectory = "/path/to/your/directory"; // 替换为你需要操作的实际路径
String oldExtension = ".old";
String newExtension = ".new";
try {
changeFileSuffix(rootDirectory, oldExtension, newExtension);
} catch (Exception e) {
e.printStackTrace();
}
}
public static void changeFileSuffix(String directoryPath, String oldExt, String newExt) throws Exception {
File dir = new File(directoryPath);
if (dir.exists() && dir.isDirectory()) {
for (File file : dir.listFiles()) {
if (file.isFile()) {
Path path = Paths.get(file.getAbsolutePath());
String fileNameWithoutExt = path.getFileName().toString().split("\\." + oldExt)[0]; // 分割文件名和旧后缀
String newPath = path.getParent().resolve(fileNameWithoutExt + newExt); // 新路径
Files.move(path, newPath, StandardCopyOption.REPLACE_EXISTING); // 用新后缀替换文件
} else if (file.isDirectory()) { // 递归处理子目录
changeFileSuffix(file.getAbsolutePath(), oldExt, newExt);
}
}
}
}
}
```
注意:
1. 使用此代码前确保已处理权限问题,尤其是访问受保护的系统目录时。
2. 这段代码将直接覆盖同名的新文件,如果需要备份原文件,应在move之前添加备份操作。
阅读全文
相关推荐


















