java实现文件重命名的方法
程序员文章站
2024-03-04 18:50:30
本文实例讲述了java实现文件重命名的方法。分享给大家供大家参考。具体如下:
下载的电影总是有一些存在网站名称等没用的信息 作为一个强迫症患者 一定要删除他们...
本文实例讲述了java实现文件重命名的方法。分享给大家供大家参考。具体如下:
下载的电影总是有一些存在网站名称等没用的信息 作为一个强迫症患者 一定要删除他们
package sys.file; import java.util.*; import java.util.regex.matcher; import java.util.regex.pattern; import java.io.*; public class zrename { public static void main(string args[]) { zrename r = new zrename(); r.replace(); //r.changeorder(); } public void replace (){ file dir = new file("g://电影//那年那兔那些事儿[原画版]"); // 这里写上发替换的文件夹路径,注意使用双斜杠 string[] files = dir.list(); file f = null; string filename = ""; //string oldname = "[电影天堂www.dygod.cn]"; string oldname = ""; //名称中要替换的部分 string newname = ""; //名称中要替换成的样子,为空时即为删除 for (string file : files) { f = new file(dir, file); // 注意,这里一定要写成file(fl,file)如果写成file(file)是行不通的,一定要全路径 filename = f.getname(); system.out.println(filename); string s1= "\\d{4}.(优酷网|搜狐视频)-"; zrename r = new zrename(); boolean b = r.regex1(s1, filename); oldname = r.regex(s1, filename); if (b){ //f.renameto(new file(fl.getabsolutepath()+"//"+filename.replace("要替换掉的内容","替换成的内容"))); //这里可以反复使用replace替换,当然也可以使用正则表达式来替换了 // 这里可以反复使用replace替换,当然也可以使用正则表达式来替换了 f.renameto(new file(dir.getabsolutepath() + "//"+ filename.replace(oldname, newname))); //将前x位删除 //f.renameto(new file(dir.getabsolutepath() + "//"+ filename.substring(9))); } } system.exit(0); } public void changeorder (){ file dir = new file("g://合并"); // 这里写上发替换的文件夹路径,注意使用双斜杠 string[] files = dir.list(); file f = null; string filename = ""; //string oldname = "[电影天堂www.dygod.cn]"; string oldname = ""; //名称中要替换的部分 string newname = ""; //名称中要替换成的样子,为空时即为删除 for (string file : files) { f = new file(dir, file); // 注意,这里一定要写成file(fl,file)如果写成file(file)是行不通的,一定要全路径 filename = f.getname(); system.out.println(filename); string s1= "\\d+"; zrename r = new zrename(); boolean b = r.regex1(s1, filename); oldname = filename; newname = r.regex(s1, filename)+" "+filename; if (b){ //f.renameto(new file(fl.getabsolutepath()+"//"+filename.replace("要替换掉的内容","替换成的内容")));//这里可以反复使用replace替换,当然也可以使用正则表达式来替换了 // 这里可以反复使用replace替换,当然也可以使用正则表达式来替换了 f.renameto(new file(dir.getabsolutepath() + "//"+ filename.replace(oldname, newname))); //将前x位删除 //f.renameto(new file(dir.getabsolutepath() + "//"+ filename.substring(9))); } } system.exit(0); } //s1要查找的正则表达式,s2查找源 public string regex(string s1,string s2){ pattern p = pattern.compile(s1); matcher m = p.matcher(s2); boolean result = m.find(); //system.out.println(result); string s =""; if (result) { s = m.group(); system.out.println(s); } return s; } //s1要查找的正则表达式,s2查找源 public boolean regex1(string s1,string s2){ pattern p = pattern.compile(s1); matcher m = p.matcher(s2); boolean result = m.find(); system.out.println(result); return result; } }
希望本文所述对大家的java程序设计有所帮助。