修改前
修改后
java.lang.String
返回值 | 方法 |
---|---|
String |
replace(char oldChar, char newChar) 返回从替换所有出现的导致一个字符串 oldChar 在此字符串 newChar 。 |
boolean |
startsWith(String prefix) 测试此字符串是否以指定的前缀开头。 |
String |
substring(int beginIndex) 返回一个字符串,该字符串是此字符串的子字符串。 |
java.io.File
返回值 | 方法 |
---|---|
boolean |
renameTo(File dest) 重命名由此抽象路径名表示的文件。 |
File[] |
listFiles() 返回一个抽象路径名数组,表示由该抽象路径名表示的目录中的文件。 |
String |
getParent() 返回此抽象路径名的父 null 的路径名字符串,如果此路径名未命名为父目录,则返回null。 |
String |
getName() 返回由此抽象路径名表示的文件或目录的名称。 |
package test;
import jdk.nashorn.internal.ir.CallNode;
import java.io.File;
public class FileTest {
public static void main(String[] args) {
File file = new File("F:\\BilibiliDown\\2020JAVA基础-深入系统的学习数据结构与算法");
System.out.println(file.getAbsolutePath());
File[] files = file.listFiles();
//加上前缀
for (File file1 : files) {
String prefix = "2020JAVA基础-深入系统的学习数据结构与算法 - ";
addPrefix("2020JAVA基础-深入系统的学习数据结构与算法 - ", file1);
}
//删除前缀
for (File file1 : files) {
String prefix = "2020JAVA基础-深入系统的学习数据结构与算法 - ";
deletePrefix(prefix, file1);
}
}
public static void addPrefix(String prefix, File file1) {
String name = file1.getName();
File file2 = new File(file1.getParent() + "\\" + prefix + name);
file1.renameTo(file2);
}
public static void deletePrefix(String prefix, File file1) {
int length = prefix.length();
String name = file1.getName();
File file2 = new File(file1.getParent() + "\\" + name.substring(length));
file1.renameTo(file2);
}
}
起因是因为在potplayer中添加播放列表后,因为文件名都有一个相同的28个字符的前缀所以,导致右侧播放列表面板需要拉宽才能看到对应的章节名,所以想删除相同的前缀,学了IO以来也并没有怎么实际应用,所以试试水,同时加深下理解和记忆.
本文地址:https://blog.csdn.net/qq_34506038/article/details/107350170
如对本文有疑问, 点击进行留言回复!!
Springboot项目因为kackson版本问题启动报错解决方案
Java多线程下的其他组件之CyclicBarrier、Callable、Future和FutureTask详解
网友评论