import java.io.*;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Xiaoshuo2 {
public static ArrayList<String> keys = new ArrayList<String>();
public static ArrayList<String> values = new ArrayList<String>();
public static List<String> fileNames = new ArrayList<>();
static {
File dirr = new File("./aaaaa");
if(dirr.exists()){
}else {
dirr.mkdir();
}
File file = new File("./d");
File[] files = file.listFiles();
for (File f : files) {
fileNames.add(f.getName());
}
add("第一章","0001");
add("第二章","0002");
add("第三章","0003");
add("第四章","0004");
add("第五章","0005");
add("第六章","0006");
add("第七章","0007");
add("第八章","0008");
add("第九章","0009");
add("第十章","0010");
}
public static BufferedReader br(String str) {
try {
FileInputStream fis = new FileInputStream(str);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);
return br;
} catch (IOException e){
return null;
}
}
public static void add(String key,String value) {
keys.add(key);
values.add(value);
}
public static String getValue(String key) {
return values.get(keys.indexOf(key));
}
public static void main(String[] args) throws IOException {
for(String f : fileNames) {
Path path = Paths.get("./d/" + f);
BufferedReader br = br("./d/" + f);
String line1 = br.readLine();
String line2 = br.readLine();
String regex = "第.*章";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(line2);
if(m.find()) {
String ss = getValue(m.group());
System.out.println(ss);
String path2 = "./aaaaa/"+ss+".txt";
File fil = new File(path2);
if (fil.createNewFile()){
System.out.println("创建成功");
}else{
System.out.println("已存在");
}
List<String> lines = Files.readAllLines(path);
BufferedWriter bw = new BufferedWriter(new FileWriter(path2));
for (int i = 0; i < lines.size();i++) {
bw.write(lines.get(i).toString());
bw.newLine();
bw.flush();
}
bw.close();
}
}
}
}
最后使用bat命令
copy *.txt xxxx.txt
合并整理好顺序的多个txt文件为一个txt文件