【发布时间】:2018-12-23 01:02:33
【问题描述】:
如何以最高的磁盘效率读取文件的最后几个字符?
【问题讨论】:
-
“有可能吗?” 是的! --- Why is “Is it possible to…” a poorly worded question?
-
@Andreas:不,实际上这是不可能的。您只能按顺序读取数据,这与Java无关,而是操作系统限制
-
@HovercraftFullOfEels 当然有可能。问题是关于“以更高的磁盘效率这样做”,您可以通过随机访问读取最后一个块,处理这些字节(反向),然后读取second-last 块,进程字节,...最后读取第一个块,进程字节。更大的块大小将提高效率。如果您愿意,您甚至可以将字符设置为
Reader。 -
random-access,这就是我要搜索的内容,谢谢
-
@LucasNoetzold 如果您的文本文件使用单字节字符集(例如不是 UTF-8),那么“最后 4 个字符”表示“最后 4 个字节”,那么是的,使用 @987654323 @ 只读取最后 4 个字节可能是最快的方式。只有剖析才能确定。