import java.io.*;
import java.util.ArrayList;
import java.util.List;/*** 2020年11月16日15点* 作者 石宗昊* io读两个文件,生成list 排重后写文件*/
public class test10 {public static void main(String[] args) throws IOException {List<String> list = new ArrayList<String>();list = file1("C:\\Users\\admin\\Desktop\\test\\df.txt");list.removeAll(file2("C:\\Users\\admin\\Desktop\\test\\wf.txt"));System.out.println("file1-fil2=" + list.size());//写文件Input(list, "C:\\Users\\admin\\Desktop\\test\\123.txt");System.out.println("PrintWriter_OK");}//传入 "073126"   "17737134329" "2020-10-28 00:06:38" "2020-10-28 00:06:47" "DELIVRD" "DELIVRD" "ninde"  文件地址public static List<String> file1(String url) throws IOException {//用来存放经过处理最后需要比对的List<String> list = new ArrayList<String>();//传入要读目标地址File file = new File(url);//生成io流FileReader fileReader = new FileReader(file);//接逐行数据BufferedReader br = new BufferedReader(fileReader);//判断文件是否存在if (file.exists()) {//暂存每行内容String lineContent = null;while ((lineContent = br.readLine()) != null) {//截取  格式为 17799358256,2020-10-28 00:06:55list.add(lineContent.substring(10, 43).replace("\"\t\"", ","));}}//关闭读文件流br.close();fileReader.close();System.out.println("file1:" + list.size());return list;}//传入 18074522410,1,2020-10-28 00:06:45,3,DELIVRD,0 文件地址public static List<String> file2(String url) throws IOException {//传入要读目标地址File file = new File(url);//生成io流FileReader fileReader = new FileReader(file);//接逐行数据BufferedReader br = new BufferedReader(fileReader);//用来接       18074522410,1,2020-10-28 00:06:45,3,DELIVRD,0  号码与日期中间的数字int a2;//用来存放经过处理最后需要比对的List<String> list = new ArrayList<String>();//判断文件是否存在if (file.exists()) {//暂存每行内容String lineContent = null;//如果有下一行while ((lineContent = br.readLine()) != null) {//如果读到的行  有DELIVRD字段if (lineContent.contains("DELIVRD")) {//拿到需要重复的行数a2 = Integer.parseInt((lineContent.substring(12, 13)));//重复次数for (int i = 0; i < a2; i++) {//循环写入号段,日期   //18115170627,2020-10-28 00:07:02list.add(lineContent.substring(0, 11) + "," + lineContent.substring(14, 33));}}}}//关闭读文件流br.close();fileReader.close();System.out.println("file2:" + list.size());return list;}//将文件写入本地用的     写入内容   写入地址public static synchronized void Input(List<String> list, String url) {FileWriter fw = null;try {//如果文件存在,则追加内容;如果文件不存在,则创建文件File f = new File(url);fw = new FileWriter(f, true);PrintWriter pw = new PrintWriter(fw);for (String s : list) {pw.println(s);}pw.flush();fw.flush();pw.close();fw.close();} catch (IOException e) {e.printStackTrace();}}
}

io读两个文件,生成list 排重后写本地文件(Java)相关推荐

  1. 安装Ruby、Sass在WebStrom添加Watcher实现编辑scss文件时自动生成.map和压缩后的.css文件...

    前言 这段时间一直在看Bootstrap,V3官方直接提供了Less版本的源码,就先将Less学完了,很简单的语法,学习写Demo都是在Webstorm里写的,配置了Watcher自动编译(详见< ...

  2. Pandas将dataframe保存为pickle文件并加载保存后的pickle文件查看dataframe数据实战

    Pandas将dataframe保存为pickle文件并加载保存后的pickle文件查看dataframe数据实战 目录 Pandas将dataframe保存为pickle文件并加载保存后的pickl ...

  3. 多个文件生成zip压缩包人后浏览器进行下载

    多个文件生成zip 浏览器下载 前言 直接上代码(多个文件生成zip 然后浏览器下载代码) 控制层 前言 第一次写博客 只是想让自己做一些笔记 以后用到我可以在这里找到 直接上代码(多个文件生成zip ...

  4. java 生成.pcap_java抓包后对pcap文件解析示例

    这是自己写的简单的解析pcap文件,方便读取pcap文件,大家参考使用吧 复制代码 代码如下: InputStream is = DataParser.class.getClassLoader().g ...

  5. 查看linux文件生成时间,【linux】如何查看文件的创建、修改时间

    本篇博文旨在介绍Linux下查看文件时间的方法:并介绍如何使用touch指令来进行文件时间的创建以及修改 如何查看文件的时间信息 利用stat指令查看文件信息 三种时间的介绍 ATime --文件的最 ...

  6. docker修改容器映射的端口_解密 Docker 挂载文件,宿主机修改后容器里文件没有修改...

    问题 使用 Docker Volumes 时,有时需要挂载一个宿主机目录或者文件,提供数据可持续或者容器内部服务配置文件. 使用命令 docker run -it --rm -v /root/test ...

  7. python重命名文件或目录_Python重命名多个文件的实例方法

    Python中如何重命名多个文件 在Python3中可以使用rename()方法+listdir()方法来重命名多个文件,这两个方法都是os模块的一部分,非常方便.下面本篇文章就来带大家了解一下ren ...

  8. vue上传文件,重新上传后覆盖之前文件

    重新上传覆盖之前文件,不可以做limit最大允许上传个数的限制,limit如何设置为1,那么他就只能上传一次,而且不会再执行fileChange 通过splice方法删除上传文件数组的元素,从而达到重 ...

  9. 在WebStorm里配置watcher实现编辑less文件时自动生成.map和压缩后的.css文件

    1.操作前确定成功安装less,检测方法,在命令行(cmd),输入lessc -v,看到如下类似内容,则说明安装过了.    如果需要生成压缩后的css的文件,则需要通过以下命令安装插件 npm in ...

最新文章

  1. 爱立信2015谋变之路:结盟思科聚焦IT业务
  2. python装饰器类-Python 装饰器、类装饰器、属性装饰器
  3. BCP导出导入大容量数据实践
  4. python dlib 年龄 性别_python dlib学习(一):人脸检测
  5. 蚂蚁金服自研分布式关系数据库OceanBase上线阿里云
  6. 专利计算机存储介质是智力活动,涉及计算机程序的发明专利申请的相关问题PPT课件.pptx...
  7. 导航无限级菜单 java,Element NavMenu 无限级菜单
  8. smartassembly 使用指南
  9. pip清华源安装Tensorflow-gpu
  10. 用shedlock实现分布式定时任务锁
  11. 【C语言】------ 实现三子棋
  12. 数值计算方法第一章—数值计算引论
  13. 【学习OpenCV4】聊聊图像格式
  14. 计算机第十三套试题,2012年计算机二级VB第十三套上机试题及解析
  15. 怎么把PDF转换成图片?这几种转换方法都可以做到
  16. EtherCAT主站SOEM —— 分布式时钟(Distributed Clock)抓包分析
  17. 深度学习基本知识(一)评价方法precision\recall\mAP
  18. 高级碰撞检测及响应算法——碰撞检测
  19. [LINUX]LINUX驱动开发最简环境搭建(适用于新手)
  20. 乔布斯去世并未刺激苹果收藏品大幅升值

热门文章

  1. docker项目部署 php_Docker部署PHP+Vue项目
  2. 平衡二叉树删除_自平衡二叉树实现及时间复杂度分析
  3. c51语言的数据存储模式,第5章项目三单片机存储结构及C51语言.ppt
  4. linux命令network,Linux network config
  5. go mysql 初窥。查询
  6. 在当前图纸中创建一个表格, AcDbTable 类
  7. 设置超链接在各种状态改变的样式颜色
  8. GNU make manual 翻译( 一百二十四)
  9. Cherry,你会喜欢这种手机!
  10. 浅析HandlerThread