首页 > Java > java教程 > 比较大型 csv 文件 #eg38

比较大型 csv 文件 #eg38

王林
发布: 2024-09-10 16:31:09
原创
782 人浏览过

这是两个结构相同的 csv 文件(A 和 B)。两者都使用KEY_A、KEY_B和KEY_C作为主键,并且两者有不同的记录。

Compare large csv files #eg38
使用Java通过三种方式比较两个文件,并将结果分别写入新的csv文件。 1. 找到主键相等而其他字段值不相等的记录,输出其主键,然后输出A的其他字段和B的其他字段。以下是预期结果:

Compare large csv files #eg38

  1. 根据主键查找A和B的差异,即A中存在但B中不存在的记录。以下是预期结果:

Compare large csv files #eg38

  1. 根据主键求B和A的差异。以下是预期结果:

Compare large csv files #eg38
编写 SPL 代码进行这三个比较。以下是第一次比较:

Compare large csv files #eg38

Compare large csv files #eg38

Compare large csv files #eg38
T()函数解析csv文件或将数据写入csv文件; @c 选项允许使用游标从无法装入内存的文件中检索数据。 sortx() 函数对游标中的数据进行排序。 joinx() 函数执行合并连接。 merge()函数合并记录; @d 选项可以找到差异。

阅读如何在 Java 中调用 SPL 脚本,了解如何将 SPL 集成到 Java 应用程序中。

这是 StackOverflow 上的问题之一。你可以点击查看,传统的解决方案相当复杂,但 SPL 方法确实简单高效。

SPL开源地址

以上是比较大型 csv 文件 #eg38的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板