Java编写程序,使用File类将特定目录下的所有文件进行重命名,在源文件主名的后面加上文件最后被修改的时间(yyyy-mm-dd),文件的扩展名不变。
时间: 2024-02-15 21:04:50 浏览: 51
以下是Java代码实现:
```java
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;
public class FileRename {
public static void main(String[] args) {
String directoryPath = "C:/example"; // 指定目录路径
File directory = new File(directoryPath);
File[] files = directory.listFiles(); // 获取目录下所有文件
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); // 创建日期格式化对象
for (File file : files) {
String fileName = file.getName(); // 获取文件名
String fileExtension = fileName.substring(fileName.lastIndexOf(".")); // 获取文件扩展名
long lastModified = file.lastModified(); // 获取文件最后修改时间
Date date = new Date(lastModified);
String newFileName = fileName.substring(0, fileName.lastIndexOf(".")) + "_" + dateFormat.format(date) + fileExtension; // 构造新文件名
File newFile = new File(directoryPath + "/" + newFileName); // 创建新文件对象
file.renameTo(newFile); // 重命名文件
}
}
}
```
需要注意的几点:
1. 需要指定目录路径,可以使用绝对路径或相对路径;
2. 文件最后修改时间需要转化为字符串格式,这里使用了日期格式化对象;
3. 重命名文件需要创建新的文件对象,并调用 `renameTo` 方法。
阅读全文