gpt4 book ai didi

java - TrueZip 随机访问功能

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

我试图了解如何在 Java 6 环境中使用 TrueZIP(使用 Files 类)随机遍历 .tar.gz 中的文件。我发现它使用 Java 7 的 Path 的实例,但是,我无法想出一个关于如何在 Java 6 上随机读取存档的示例。

此外,“随机”读取是指它首先解压缩整个存档,还是读取压缩文件中的部分?目的是我想从文件中检索一些基本信息,而不必为了读取它而解压缩整个文件(即用户名)。

最佳答案

gzip 用于压缩文件(尤其是 .tar.gz 文件)的方法通常意味着输出文件不是随机可访问的 - 您需要符号从整个文件到当前 block 的表和其他上下文,甚至能够解压缩该 block 以查看其中的内容。这是它实现(某种程度上)比 ZIP/pkzip 更好压缩的方法之一,ZIP/pkzip 在将每个文件添加到容器存档之前单独压缩每个文件,从而能够查找特定文件并仅解压缩该文件。

因此,为了分离一个 .tar.gz,您需要将整个文件解压到一个临时文件或内存中(如果它不是太大),然后您可以跳转到底层 .tar 文件中的特定条目,尽管这必须通过从 header 跳到 header 按顺序完成,因为 tar 不包含中央索引/目录的文件。

关于java - TrueZip 随机访问功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12748764/

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