在观看日本轻小说改编的动画时,我们可能会发现动画的名字变得越来越长,这对于一些喜欢逐字逐句阅读原著的观众来说,可能会造成一定的困扰。然而,如果我们希望对这些动画进行批量重命名,手动一个一个地修改名称显然是相当繁琐的工作。因此,一种更有效的方法是通过I/O流来实现这个功能。

改名之前:

```

嗯~感觉舒服多了,虽然好像在骂人的样子...

代码如下:

```

通过使用I/O流,我们可以轻松地将这些动画名称从较长的格式更改为较短的格式,而无需逐个手动修改。这种方法不仅提高了效率,还可以让我们在重命名过程中保持良好的心情。

以下是重构后的代码,保持了原有的逻辑结构和功能:

```java

package cn.zsp.io_10;

import java.io.File;

import java.io.FilenameFilter;

public class FileDemo {

public static void main(String[] args) {

File file = new File("D:\\java项目\\java的学习\\IO_study\\普通攻击");

FilenameFilter filter = new FilenameFilter() {

@Override

public boolean accept(File dir, String name) {

return new File(dir, name).isFile() && name.endsWith(".mp4");

}

};

File[] files = file.listFiles(filter);

// 对文件进行重命名操作

for (File f : files) {

String name = f.getName();

int lastIndex = name.lastIndexOf("_");

String nameNumber = name.substring(lastIndex - 3, lastIndex + 1);

// 获取集数并拼接新的名字

int fileTypeIndex = name.indexOf(".");

String fileType = name.substring(fileTypeIndex);

String newName = nameNumber.concat("你妈劈").concat(fileType);

f.renameTo(new File(file, newName));

}

}

}

```