1.需求
首先,我需要将文件的后缀名加上其他的东西,如md后缀转成xhlmd,最好还是递归搜索的,给定一个目录,批量修改下面所有文件的文件名。
其次,还要将它还原,xhlmd还原成md。
2. 代码实现
import java.io.File;
public class Main {
private static void toggle(String dir, String salt) {
final File file = new File(dir);
if (file.isDirectory()) {
final File[] fs = file.listFiles();
if (fs != null) {
for (File f : fs) {
toggle(f.getAbsolutePath(), salt);
}
}
}
final String fileName = file.getName();
final String[] split = fileName.split("\\.");
if (split.length >= 2) {
final int length = split.length;
final String suffix = split[length - 1];
String newSuffix;
if (suffix.contains(salt)) {
// 去掉
newSuffix = suffix.substring(salt.length());
} else {
// 加上
newSuffix = salt + suffix;
}
final String newFilename = fileName.substring(0, fileName.lastIndexOf('.')) + "." + newSuffix;
final String newPath = file.getParent() + File.separator + newFilename;
final boolean b = file.renameTo(new File(newPath));
System.out.println(b);
}
}
public static void main(String[] args) {
final String dir = "F:\\临时文件夹\\笔记";
toggle(dir, "xhl");
}
}
思路
代码思路首先是递归,先将该目录下的所有子文件/目录修改一遍,最后修改该目录的文件名。
模型:
void todo(String parent) {
for (String child : parent)
todo(child);
// do something with parent
}
本文档介绍了如何使用Java实现一个递归脚本,实现从.md后缀到.xhlmd的文件名转换,并提供相应的还原功能。通过toggle方法,针对指定目录及其子目录内的文件进行操作,适用于文件管理需求。
3729

被折叠的 条评论
为什么被折叠?



