美文网首页
在java中使用io流批量处理文件

在java中使用io流批量处理文件

作者: 永远爱你ol | 来源:发表于2022-06-23 17:12 被阅读0次

最近在工作中需要批量处理一些文件,为了提高效率节省时间,自己写了一个处理的java小工具,分享一下。
首先说明一下,我所处理的文件是在一个文件夹中有多个子文件夹,每个子文件夹里面只有一个同名的文件。其他不同的文件存放方式,可以根据实际情况修改一下。

示例代码分享:

    public String helloSpringBoot() throws IOException {
        List<File> allFileList = new ArrayList<>();
        File dir=new File("e:\\zdir");   //文件放在e盘的zdir文件夹中
        File[] fileList = dir.listFiles();
        for(File file : fileList){
            File dir2=new File("e:\\zdir\\"+file.getName());
            allFileList.add(dir2);
            System.out.println(dir2.getName());
        }

        for(File file : allFileList) {
            String filePath = "e:\\zdir\\"+file.getName()+"\\_index.md";

            //读取后文件存放到新的文件夹zdir2中
            File newDir=new File("e:\\zdir2\\"+file.getName()); 
            File newFile=new File("e:\\zdir2\\"+file.getName()+"\\_index.md");
            newDir.mkdir();
            newFile.createNewFile();

           BufferedReader bufferedReader = new BufferedReader(new FileReader(filePath));
           BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(newFile));

            int count = 0;
            String line;
            int start0 = 0;
            int start = 0;
            int start2 = 0;

            while ((line = bufferedReader.readLine()) != null) {

                count++;

                //删除文件的部分内容
                if (line.contains("此处写所需要删除内容的第一段")) {  
                    line = "";
                    start0 = count;
                    continue;
                }
                if (start0 != 0) {
                    if (line.contains("此处写所需要删除内容的最后一段的下一段")) {  
                        start0 = 0;
                    } else {
                        line = "";
                        continue;
                    }
                }

                //添加文件的部分内容
                if (line.contains("此处写需要添加内容处的上一行")) {
                    start2 = count;
                }
                if (start2 != 0) {
                    if (count == start2 + 1) {
                        bufferedWriter.newLine();
                        bufferedWriter.write("此处写需要添加的内容");
                        bufferedWriter.newLine();
                        bufferedWriter.write(line);
                        continue;
                    }
                }

                bufferedWriter.write(line);
                bufferedWriter.newLine();
            }

            bufferedReader.close();
            bufferedWriter.close();
        }
        return "success";
    }

相关文章

  • 在java中使用io流批量处理文件

    最近在工作中需要批量处理一些文件,为了提高效率节省时间,自己写了一个处理的java小工具,分享一下。首先说明一下,...

  • java_io

    java.io.File类的使用IO原理及流的分类  |---文件流   操作对象是文件     FileInp...

  • Java中的IO流

    Java中的IO流分类 输入IO流输入字节流(InputStream)处理流缓冲流(BufferedInputSt...

  • Day 16

    文件File 路径 IO流 流中的异常处理

  • Java的IO流

    一、IO流概述 IO流:Java对数据的操作是通过流的方式,IO流用来处理设备之间的数据传输,上传文件和下载文件,...

  • java基础io流——OutputStream和InputStr

    io流概述: IO流用来处理设备之间的数据传输,上传文件和下载文件,Java对数据的操作是通过流的方式,Java用...

  • 【JavaSE(十三)】JavaIO流(中)

    1 IO流 1.1 IO流概述 Java中使用 IO流 来读取和写入,读写设备上的数据、硬盘文件、内存、键盘等等,...

  • Java开发中IO流的使用以及异常的处理记录

    Java开发中IO流的使用以及异常的处理记录 先来看一些之前使用IO流的代码 C1 之前习惯的写法: 将流的开启和...

  • Java IO 操作

    IO操作 Java对数据的操作都是通过流的方式,IO流用来处理设备之间的数据传输,文件上传和文件下载,Java用于...

  • 批量处理2——Java花式处理EXCEL

    批量处理1——文件的上传(bootstrap+Ajax+SSM)批量处理2——Java花式处理EXCEL批量处理3...

网友评论

      本文标题:在java中使用io流批量处理文件

      本文链接:https://www.haomeiwen.com/subject/fnhmvrtx.html