gpt4 book ai didi

java - 如何直接从大型文本文件中读取特定行的数据,而无需在 C 或 java 中搜索每一行

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:19:49 26 4
gpt4 key购买 nike

我有一个包含一些帐户详细信息的文本文件,大小超过 7GB。每行包含单个帐户的详细信息和其他信息。在这里我想阅读一些帐户详细信息,其中包含前 3 个字符作为“XBB”。如果我过去是逐行搜索,那会花费很长时间,所以我想直接点击包含“XBB”的特定行。

在 Java 或 VB 或 VB.net 中是否有任何可能的方法来做到这一点

最佳答案

如果行按前 3 个字符排序,则可以进行二分查找。如果行是固定长度,这很简单。否则,您将需要在二进制搜索的每个步骤中搜索每行的开头。

如果您知道该行的索引,您可以尝试直接转到它。同样,如果行的长度是固定的,这是微不足道的;否则,您仍然需要进行一些探索和搜索。

在 Java 中,为此使用的工具是 RandomAccessFile .我不知道 VB/VB.net。

按照 Peter Lawrey 的建议,如果您愿意扫描文件一次,则可以在每个 3 字符前缀开始的文件中建立偏移索引。然后,您可以使用它快速到达正确的行。

关于java - 如何直接从大型文本文件中读取特定行的数据,而无需在 C 或 java 中搜索每一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13957796/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com