其实是一个非常简单的Java小程序,其实就是利用了JavaIO和字符读取的处理。
我将它打包成了jar可以在Windows环境下直接运行(需要配置好java环境)。
其实现的功能如下:
- 读取运行目录下的txt目录下的txt文件
- 处理后将在运行目录下创建目录novel,并根据txt的文件名创建二级文件夹,将分割后的文件放入其中。
- 支持在txt文件夹下放入多个txt文件进行处理。
下面是源代码:
package cn.zm;
import java.io.*;
public class DivideNovel {
public static void main(String[] args) throws Exception {
//获取运行时路径,通常是jar包所在目录
String path = System.getProperty("user.dir");
System.out.println(path);
File file = new File(path+"/txt/");
File[] files = file.listFiles();
//获取当前系统桌面路径,并在该路径创建novel文件夹,用来存放结果
File rsPathRoot = new File(path+"/novel");
//新建根路径novel
if (!rsPathRoot.exists()){
boolean mkdir = rsPathRoot.mkdir();
if (mkdir){
System.out.println(rsPathRoot.getPath()+"创建成功!");
}
}
//获取该路径下的每个文件
for (File filename : files) {
readerLine(filename, rsPathRoot);
}
}
private static void readerLine(File file, File rsPathRoot) throws IOException {
InputStream rs = new FileInputStream(file);
String name = file.getName().split("\\.")[0];
System.out.println(name+"分割开始!");
System.out.println("++++++++++++++++++++++++++++++++++++++++++++++++++");
BufferedReader br = new BufferedReader(new InputStreamReader(rs));
PrintWriter writer = null;
String line = "";
int countLine = 0;
File rsPath = new File(rsPathRoot.getPath()+"/"+name);
if (!rsPath.exists()){
boolean mkdir = rsPath.mkdir();
if (mkdir){
System.out.println(rsPath+"创建成功!");
}
}
while ((line = br.readLine())!=null) {
if (countLine % 500 == 0) {//此处的500是读取500行的意思,即每500行做一个新文件
if (writer != null) {
writer.flush();
writer.close();
}
String filename = name + (countLine / 500);
writer = new PrintWriter(new File(rsPath+"/"+filename + ".txt"));
//System.out.println(filename+".txt"+"已经完成");
}
writer.println(line);
++countLine;
}
if (writer != null) {
writer.flush();
writer.close();
}
System.out.println(name + "--分割完成!");
System.out.println("++++++++++++++++++++++++++++++++++++++++++++++++++");
System.out.println();
System.out.println();
}
}
附jar下载链接
复制这段内容后打开百度网盘手机App,操作更方便哦
链接:https://pan.baidu.com/s/13TbFULYK6bEIqpgaJp6NEw
提取码:ecky
- 注:jar包本身只有几kb大小,压缩包中有两部小说,以供测试。
jar包使用方法
- win+R键打开CMD命令
- 切换到程序目录
- 输入命令执行jar包,即可完成分割
- 查看jar包所在目录