VBA 以相反的顺序逐行读取大文本文件

Ted*_* Xu 5 algorithm excel vba

VBA问题

有一个很大的日志文件(大约 500,000 行),我需要以相反的顺序逐行读取它,即从最后一行到第一行。我知道我可以在 Microsoft Scripting Runtime 参考中使用 FileSystemObject,但没有像TextStream 中 ReadLine 方法的reverse这样的选项

现在,我能想到的唯一方法是这样,有一个计数器并跳过我阅读的每一行的前几行,但这绝对不够好。任何建议代码/算法将不胜感激。

Kaz*_*wor 3

如果您的日志是一种带有允许确定顺序的字段的数据库(是否有日期字段或行号字段),如果是这样,您可以尝试使用 ADO 解决方案和 SQL 查询以相反的顺序读取日志(ORDER BY ... 描述)。因此,您将能够从最后到第一个阅读。或者通常尝试使用 ADO。