作为一名帅气(苦逼)的学生干部,密切服务群众,这不,收集照片之后要求将姓名+学号的文件按要求改为学号+姓名
人和动物的根本区别是是否会使用工具,使用java的File类进行批量操作,代码如下:
import java.io.File; /** * @Author Pandas * @Date 2020/3/30 15:32 * @Version 1.0 * 文件名为:王大锤_171060001.jpg * 想转换为:171060001_王大锤.jpg */ public class FileDo { public static void main(String[] args) { String dirName="D:/照片/*班照片"; File dir = new File(dirName); File[] filesList = dir.listFiles(); // 如果路径存在且确为目录 if (dir.exists() && dir.isDirectory()) { for (File file : filesList) { //如果文件为.jpg格式 if (file.isFile() && file.getName().substring(file.getName().lastIndexOf(".")).equals(".jpg")) { String fileName = file.getName(); String name = fileName.substring(0, fileName.lastIndexOf("_")); String number = fileName.substring(fileName.indexOf("_") + 1, fileName.lastIndexOf(".")); //重命名,这里定义文件名要绝对虚拟路径 File dest = new File(dirName + "/"+number+"_"+name+".jpg"); file.renameTo(dest); } } } } }
按照惯例面向doc编程: