在代码中手工加入后缀名版本:
import java.io.File;
import java.sql.Date;
import java.text.SimpleDateFormat;
public class ChangeFileName {
public static void main(String[] args) throws Exception {
changeFile(new File("E:\\test"));
}
static void changeFile(File file) throws Exception {
if (file.isFile()) {
long time = file.lastModified();
String modifiedtime = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss").format(new Date(time));
String rootPath = file.getParent();
File newFile = new File(rootPath + File.separator + modifiedtime + ".jpg");
if(file.renameTo(newFile))
{
System.out.println("修改成功!");
}
else
{
System.out.println("修改失败");
};
}
else {
File[] files = file.listFiles();
for (File filealone : files)
changeFile(filealone);
}
}
}
自动获取后缀名版本:
import java.io.File;
import java.sql.Date;
import java.text.SimpleDateFormat;
public class ChangeFileName2 {
public static void main(String[] args) throws Exception {
changeFile(new File("E:\\test"));
}
static void changeFile(File file) throws Exception {
if (file.isFile()) {
long time = file.lastModified();
String modifiedtime = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss").format(new Date(time));
String rootPath = file.getParent();
String filename = file.getName();
String substring = "";
if ((filename != null) && (filename.length() > 0)) {
int dot = filename.lastIndexOf('.');
if ((dot >-1) && (dot < (filename.length() - 1))) {
substring = filename.substring(dot + 1);
}
}
File newFile = new File(rootPath + File.separator + modifiedtime + "." + substring);
if(file.renameTo(newFile))
{
System.out.println("修改成功!");
}
else
{
System.out.println("修改失败");
};
}
else {
File[] files = file.listFiles();
for (File filealone : files)
changeFile(filealone);
}
}
}
本文介绍了一种使用Java程序批量修改文件名的方法,包括手动指定后缀名和自动获取原有后缀名两个版本。通过获取文件最后修改时间并将其作为新文件名的一部分,可以有效地为大量文件添加时间戳。
492





