Java小工具 根据文本批量修改文件名
2018-12-26 15:08
495 查看
功能
可以根据使用路径修改文件名,已经测试,可以成功运行
思路
先是读取到txt文本文件,之后使用String的
spilt进行分割,每一行的格式为
旧名字 新名字,中间的空格可以使用
|或者其他字符代替,以此为标志分割String
之后将旧名字当做key,新名字当做value写入到map中去
获得文件的所在的文件夹,
listFile遍历得到所有的文件,之后
getName获得文件名(这里获得到的文件名是包括有扩展名的)
再次使用String的
spilt进行处理(参数为"\.",需要转义),得到文件名和扩展名
reName改名字,参数为一个文件对象
代码
先把代码贴出来吧,之后再做个有界面的工具~
class Test { private static Map<String, String> map; public static void main(String[] args) { map = readTxtFile("T:\\游戏资源\\仙剑4\\音乐目录.txt"); reName("T:\\游戏资源\\仙剑4\\仙剑奇侠传四音乐"); } /** * * @param s 文件所在文件夹路径名 */ public static void reName(String s){ File file = new File(s); if (file.isDirectory()){ File[] files = file.listFiles(); for (int i = 0; i < files.length; i++) { String h = files[i].getName(); String[] temp = h.split("\\."); String newName = map.get(temp[0]); files[i].renameTo(new File(s+"\\"+newName+"."+temp[temp.length-1])); } } } private static HashMap<String, String> readTxtFile(String filePath){ HashMap<String, String> map = new HashMap<>(); try { String encoding="GBK"; File file=new File(filePath); if(file.isFile() && file.exists()){ //判断文件是否存在 InputStreamReader read = new InputStreamReader( new FileInputStream(file),encoding);//考虑到编码格式 BufferedReader bufferedReader = new BufferedReader(read); String lineTxt = null; while((lineTxt = bufferedReader.readLine()) != null){ String[] split = lineTxt.split(" "); map.put(split[0],split[1]); } read.close(); }else{ System.out.println("找不到指定的文件"); } } catch (Exception e) { System.out.println("读取文件内容出错"); e.printStackTrace(); } return map; } }
相关文章推荐
- 使用Jsoup.jar写的工具类(java提取Html中的文本)
- Java时间工具--根据毫秒数按照时分秒格式“HH:mm:ss”显示
- java根据经纬度坐标计算两点的距离算法,与百度地图测距工具相符
- Java图片文本识别工具Eye实现(不支持中文)
- JAVA根据文件名、URL下载远程文件
- java小工具(一)获取不带后缀的文件名
- 文本文件相同行删除工具 java
- Java实现批量修改文件名
- java写的日期工具,根据设置日期获取指定的一周或者一个月的所有日期
- JAVA文本操作处理 完成一个java application应用程序,判别指定路径下指定文件名的文件是否存在
- java 根据文件名获得 本地的绝对路径
- 利用在线工具根据JSon数据自动生成对应的Java实体类
- 使用Java中File类批量创建文件和批量修改文件名
- Mark一下.根据文件路径获取文件名的java方法
- android(安卓)开源框架 使用在线工具jsonschema2pojo根据json生成java对象
- 根据提供的文件名文本,查找指定目录下的该文件,找到后复制到指定文件夹--bash
- Java 遍历磁盘文件并将所有的文件名保存至文本
- java根据url生成缓存key(或文件名)
- JAVA工具类(12)---文本字符串工具类(数据替换,加密解密操作)
- 【工具使用】【文本编辑】使用editplus学习java的快捷键使用总结