package javaApplication;
import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Scanner;
/**
*
* @author qz:
* @version 创建时间:2019年10月15日 上午11:14:46
*
* 读取用户输入的目录、路径,批量修改目录下文件
* 用户可以自行输入前缀和文件名分隔符和后缀
*/
public class RenameBatch {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("Enter the folder to rename: ");
Scanner in = new Scanner(System.in);
String path = in.nextLine();
System.out.println("the path entered is :"+path);
System.out.println("Enter the name prefix (eg.0000,person...,default press enter use date yyyy-MM-dd):");
String prefix = in.nextLine();
System.out.println("Enter the name separator(eg. - _ ~ + & default press enter use -): ");
String separator = in.nextLine();
if (separator.isEmpty()) {
separator = "-";
}
System.out.println("Enter the suffix(eg. jpg,txt,png...) : ");
String suffix = in.nextLine();
File folder = new File(path);
if ( !folder.exists() ) {
System.out.println("the folder does't exist");
System.exit(1);
}else if ( !folder.isDirectory()) {
System.out.println("Is not a directory!");
System.exit(2);
}
Date today = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy"+separator+
"MM"+separator+"dd");
String dstName;
if (prefix.isEmpty()) {
dstName = sdf.format(today)+separator;
}else {
dstName = prefix+separator;
}
//其实可以使用数组,数组快一点
List<File> files = Arrays.asList(folder.listFiles());
for(int i = 0 ; i<files.size();i++) {
files.get(i).renameTo( new File(folder, dstName+(i+1)+suffix) );
}
}
}
批量修改文件名小工具
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...