|
|
1
7
你为什么要倒着读呢?尝试向后读取压缩文件不会提高性能。您必须先解压缩它(要理解字节n的意思,您必须首先解压缩字节0。。n) 是的。 在速度方面,你可能不会比:
|
|
|
2
4
|
|
|
3
0
不要将文件存储在内存中。将其存储在SQLite或类似的数据库中,在读取行号并将其插入数据库时,使用行号的顺序索引字段。 当文件完全存储在数据库中时,通过使用降序排序对索引进行排序,向后遍历行。您可以根据需要快速跳转数据库,还可以使用数据库查询来定位行。如果你有足够的RAM或固态硬盘,它不会像现在这样快,但它会比你所说的处理压缩文件快得多。 计算机编程就是在有限的工作范围内寻找创造性的解决方案。您受到RAM和使用压缩文件这一事实的限制。你必须解压文件才能反向遍历它,但是你不能将它放入RAM中。所以,你必须把数据放在某个地方,而这几乎就只剩下磁盘了。与平面文件相比,向后遍历数据库更容易,因此可以使用数据库来实现它的优点,然后继续前进。 |
|
|
4
0
this post 我想你可以用
这将允许您逐行遍历文件,如
我的理解是,这不会拖拉整个文件,应该有助于大文件的内存。如果我错了,希望有人会来打我一巴掌。 我也知道这是向前发展的,但我对你的希望是,现在你不需要从记忆的角度倒退。如果您仍然这样做,也许您可以做一些修改,将其与File::Backwards一起使用。
|
|
|
Alex Multifabrika · 设置IIS10以提供预压缩文件 8 年前 |
|
|
Brendan Gooden · 无法将值附加到字符串C# 8 年前 |
|
|
noobcoder · 如何为PIGZ(并行gzip)准备放气流? 8 年前 |
|
|
olmedocr · 在firebase上使用gzip压缩 8 年前 |
|
|
Rudraksh Pathak · Gzip压缩不适用于XHR请求 8 年前 |
|
|
RightmireM · 逐行写入gzip文件 8 年前 |