随机修改文件名称

本文介绍了一个简单的Java程序,用于批量重命名指定目录下的文件。该程序通过遍历指定路径下的所有文件,并使用UUID生成唯一的文件名,从而避免了文件名重复的问题。此工具适用于需要批量处理大量文件并进行重命名的场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

起因:保存的文件太多合并的时候文件名相同会覆盖所有需要一个可以全部重命名的工具。


注意: 在修改文件名称的过程中要指定文件存放的位置否则所有文件会归到项目路径下面。




package test;



import java.io.File;
import java.util.UUID;


public class UpdateFileName {


public static void main(String[] args) {
File root = new File("C:");
try {
renameFile(root);
} catch (Exception e) {
e.printStackTrace();
}

}


final static void renameFile(File dir) throws Exception {
File[] fs = dir.listFiles();
for (int i = 0; i < fs.length; i++) {
//打印全路径名称
System.out.println(fs[i].getAbsolutePath()); 

//判断文件是否存在
if(!fs[i].exists())
 {
fs[i].createNewFile();
 }
 System.out.println("修改前文件名称是:"+fs[i].getName());
 String rootPath = fs[i].getParent();
 System.out.println("根路径是:"+rootPath);
 File newFile = new File(rootPath + File.separator +UUID.randomUUID().toString()+ ".jpg");
 System.out.println("修改后文件名称是:"+newFile.getName());
 if (fs[i].renameTo(newFile)) 
 {
  System.out.println("修改成功!");
 } 
 else 
 {
  System.out.println("修改失败");
 }

}

 
}




 
 


}
由于自己经常利用浏览器插件下载网页图片,由此产生很多的文件夹和文件,这些文件夹的名字多半是网页的title,导致文件夹名很长,文件名多是些很长的数。感觉这样的状况不是很好就自己用java实现了简单的shell来管理这些自动下载的批量文件产生的文件夹和文件! 使用注意事项: 该程序默认的工作路径是c:\盘,建议在windows环境下利用这则小程序,linux下未测试。 这个简单的java shell拥有以下几个命令: cd 进入要工作的目录 ls 列出该工作目录下的文件和文件夹 re 对工作目录下的文件夹名或文件名进行改名操作 man 对具体的命令的详细帮助文档 pwd 显示当前工作的目录 history 显示已经输入的历史命令 help 调取帮助文档命令 exit 退出当前的程序 其中re修改文件以及文件夹名的命令是这个程序的价值体现。 re/cd/ls/man这四个命令拥有命令选项,在使用命令选项的规则统一是:xx-uuff其中xx代表命令,-代表分隔符是必须的,uu代表命令选项,ff代表具体需求的字符。 pwd/history/help/exit是单个输入的命令,没有命令选项。 利用这样的命令:man-cd就可以查看cd命令使用的具体介绍,其中-是必须的,其它带有命令选项的都可以通过这种方式查看命令帮助文档。 例如输入:man-re就会列出以下信息 对当前工作目录下的文件夹名和文件名进行改动的命令: re -j@#将目录下所有的文件夹名字中@#间(包括@#)内容去掉 re -q@将目录下所有文件夹名中@后(包括@)的内容去掉 re -h@将目录下所有文件夹名中@前(包括@)的内容去掉 re -k@将目录下所有文件名中的@去掉,当@为.时表示去掉名字中的空格(特注) re -m@#$将目录下所有文件名中的@#$去掉,这是去掉名字中多个字符的命令 re -r@#将目录下所有文件名中的@用#替换掉 re -s@#$%将目录下所有文件名中的@用#替换,$用%替换,这是替换名字中多个字符的命令 re -f+前面七个命令的命令选项的话就是对该工作目录下的所有文件的文件名起相应作用(小心使用)! re -fh.ppp.xxx将目录下所有符合条件的文件的文件名的后缀ppp改成xxx!(较复杂,还未实现) re -fa将当前工作目录下的所有文件名按数字递增方式命!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值