您的位置:首页 > 编程语言 > Java开发

java使用递归批量修改文件扩展名

2018-01-15 09:50 267 查看
首先,直接上代码
package com.xichengxml.demo01;

import java.io.File;

public class FileRename {
public static void main(String[] args) {
File srcDir = new File("E:\\金山打字通自定义课程文件\\lesson20171130");
renmaeRecursion(srcDir);
}

//使用递归遍历更改文件扩展名
private static void renmaeRecursion(File srcDir) {
File[] files = srcDir.listFiles();
for (File file : files) {
if (file.isDirectory()) {
renmaeRecursion(file);
}else {
String fileName = file.getName();
//System.out.println(file.getParentFile());
//String[] strings = fileName.split("\\.");
//增加判断逻辑,避免误操作.txt文件
if (!fileName.contains(".txt")) {
String newName = fileName.substring(0, fileName.lastIndexOf(".")) + ".txt";
file.renameTo(new File(file.getParentFile(),newName));
}
}
}

}
}
接下来,对代码进行说明,首先,要批量修改文件扩展名,最好使用递归,可以对多层目录进行操作;修改文件名时,可以采用split方法将文件名截成字符串数组,但这样实现会比较浪费内存和时间,算法不佳,所以采用substring方法替换扩展名,之后使用rename方法将文件名修改为新文件名。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐