首页 > 编程 > Java > 正文

java实现文件重命名的方法

2019-11-26 15:05:31
字体:
来源:转载
供稿:网友

本文实例讲述了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程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表