gu123xin 2018-08-17 03:32 采纳率: 95.2%
浏览 844
已采纳

java以字符流的形式清洗超大文本

我用 BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File("D:\ccc.txt")),"UTF-8"));
BufferedInputStream inputStream = new BufferedInputStream(new FileInputStream(file));
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream),5*1024*1024);方式清洗大约2G的文本,也是会包内存不足图片说明
上面是清洗之前的
下面是清洗之后的图片说明
问了其他人,说字符流可以实现,要怎么实现,麻烦详细些,谢谢

  • 写回答

5条回答 默认 最新

  • z8g 2018-08-17 04:44
    关注

    楼主试试

     import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    
    public class QingXi {
        public static void main(String[]args) throws FileNotFoundException, IOException{
    
            String pathRead = "D:/test_input.txt";
            String pathWrite = "D:/test_output.txt";
    
            FileReader fr = new FileReader(pathRead);
            FileWriter fw = new FileWriter(pathWrite);
    
            BufferedReader br = new BufferedReader(fr);
            BufferedWriter wr = new BufferedWriter(fw);
    
            String line = br.readLine();
            while(line != null){
                String str = line.replaceAll("---", ",");
                wr.append(str);
                wr.append("\n");
    
                line = br.readLine();
            }
            wr.flush();
    
            wr.close();
            br.close();
            fw.close();
            fr.close();
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗
  • ¥15 钢筋实图交点识别,机器视觉代码
  • ¥15 如何在Linux系统中,但是在window系统上idea里面可以正常运行?(相关搜索:jar包)
  • ¥50 400g qsfp 光模块iphy方案
  • ¥15 两块ADC0804用proteus仿真时,出现异常
  • ¥15 关于风控系统,如何去选择
  • ¥15 这款软件是什么?需要能满足我的需求
  • ¥15 SpringSecurityOauth2登陆前后request不一致