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程序设计有所帮助。相关阅读:
php禁止某ip或ip地址段访问的方法
win10预览版10108更新了什么 win10预览版10108更新内容与新特性汇总
Html 元素隐藏的几种方式
jQuery中scrollLeft()方法用法实例
php使用正则过滤js脚本代码实例
CentOS 6.4如何安装及设置GlusterFS以解决网络存储的问题
javascript教程之不完整的继承(js原型链)
在RHEL系统中使用CentOS的yum源的方法
Apple Watch手表怎么解锁苹果Mac电脑?
Win8升级到Win10图文教程
Win8系统更改标题栏字体大小和颜色的方法
圣诞老人到哪了?Win10地图定位追踪锁定目标
Android入门之RelativeLayout、FrameLayout用法分析
CSS实现的一闪而过的图片闪光效果