比较java中两个csv文件的内容

我正在尝试比较两个 csv 文件的内容。我有 csv 文件 test1.csv 和 test2.csv。两者的内容应该相同.. 如果不是,那么我想将差异传输到 .txt 文件中。如果一切都是平等的,一切都是正确的。


我刚刚创建了两个包含列和行的测试 csv 文件


第一列是相应表的主键。我想通过标识符进行比较


test1.csv

1,Max,New York

2,David,Jersey

test2.csv

1,Max,California

2,David,Jersey

.txt 中的输出应该是行"1,Max,New York"


我只是没有代码。我对我能得到的每一个建议和提示都很高兴。先感谢您。


偶然的你
浏览 222回答 2
2回答

MM们

我建议最简单的方法是使用在线工具比较两个文件内容,这会让您了解不同之处。您可以参考以下链接。https://www.diffchecker.com/diff如果需要,可以使用需要下载的 winmerge 等工具。如果想用java实现,参考下面两个链接。https://javaconceptoftheday.com/compare-two-text-files-in-java/java比较两个文件

守候你守候我

如果您在前面有记录标识符。在这种情况下,您需要对一个或两个文件进行排序(如果它们尚未排序)并开始逐行读取第一个文件并在第二个文件中搜索相同的 Id。这里有多种优化策略,排序是最通用的。由于第二个是基本排序的,因此如果使用索引,搜索速度会非常快。一个适用于中小型文件的简单解决方案示例是读取内存中的第二个文件并将其排列在 TreeMap 中(这将隐式对其进行排序),其中键是 ID,值是行。然后,您逐行读取源文件并根据树图测试该行是否相等。如果不是,您决定如何处理这两条线。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java