背景:公司要求使用PADS完成原理图设计、PCB Layout。而他硬件工程师要求我在将PADS的库文件发送给他们之前,必须在每一个库文件的后面追加今天的日期,再发送给他们。
问题来了,如果一次需要发送多个库文件,那我就得修改很多个库文件的名字,这个过程十分繁琐枯燥、费时费力。
于是,我想:能不能使用Java语言设计一个程序,用于批量修改某个文件夹里面的文件的名字呢?
答案是肯定的。于是,趁着今天周末有空,动动脑子和手,解决这些问题。
修改前的文件名:
程序
1 import java.io.File; 2 import java.text.DateFormat; 3 import java.text.SimpleDateFormat; 4 import java.util.Date; 5 6 public class IOFileTest { 7 8 public static void main(String[] args) { 9 // 日期格式,例如:20190331 10 DateFormat dateFormat = new SimpleDateFormat("yyyyMMdd"); 11 12 // 指定路径 13 File filepath = new File("E:/PADS/Libraries/temp"); 14 15 // 列出该路径下所有文件 16 File[] originalfiles = filepath.listFiles(); 17 for (int i = 0; i < originalfiles.length; i++) { 18 System.out.println(dateFormat.format(new Date())); 19 20 // 获取父目录 21 String parentDirectory = originalfiles[i].getParent(); 22 23 StringBuilder stringBuilder = new StringBuilder(originalfiles[i].getName()); 24 // 搜索".",因为"."之后文件的后缀名,将要追加的字符串是添加在后缀名前面的 25 int index = stringBuilder.lastIndexOf("."); 26 // 在后缀名前面插入今天的日期 27 stringBuilder.insert(index, "_" + dateFormat.format(new Date())); 28 29 // 重命名文件 30 File newFile = new File(parentDirectory + File.separator + stringBuilder); 31 if (originalfiles[i].renameTo(newFile)) { 32 System.out.println("The original file is " + originalfiles[i].getName()); 33 System.out.println("The new file is " + newFile.getName()); 34 System.out.println(); 35 } else { 36 System.out.println("Fail!"); 37 } 38 } 39 } 40 }
运行结果(修改后的文件名):
原文地址:https://www.cnblogs.com/Satu/p/10567862.html
时间: 2024-10-08 16:44:51