当前位置: 首页 > 面试题库 >

使用JDK 5 API从zip文件提取时,维护文件权限

王涵育
2023-03-14
问题内容

我正在使用java.util.Zip和java.util.ZipEntry成功将zip文件的内容添加到磁盘。我想在*
nix文件系统上解压缩时保持文件权限集。

谁能指出我这样做的“正确”方法?


问题答案:

本质上,您不能在Zip /Jar文件中存储(unix)文件权限,因此您在提取jar时不能保留它们(它们在创建jar时就丢​​失了)。看到这个问题:创建一个jar文件-保留文件权限

如果您需要保留存档中的文件权限,并在提取时恢复文件权限,则需要考虑其他.tar或.tar.gz /
.tar.bz2格式,大多数Java构建工具(Ant,Gradle, Maven …)



 类似资料:
  • 问题内容: 我正在打包和分发我为Windows,Linux和Mac开发的程序。我计划将文件和文件夹放在zip存档中。 如果我设置了正确的文件夹和文件权限,然后压缩为zip并重新分发,那么当用户在Linux或Mac系统中提取它们时,这些权限是否会得到维护?还是他们必须自己设置权限? 问题答案: 不在存档中存储文件权限。 归档文件将保留Linux和OS X上的文件权限。我不知道Windows上会发生什

  • 问题内容: 当我做的时候,我看到 我只想查看文件名。我尝试这个 但我认为分隔符并不公正。 问题答案: 假设所有文件的名称中都没有空格: 我的解压缩输出同时具有页眉和页脚,因此awk脚本变为: 处理带空格的文件名的版本:

  • 问题内容: 我正在尝试使用密码保护解压缩zip文件。我知道有一个名为“ zip4j”的Java库可以为我提供帮助。但是我无法打开zip4j网站来查看教程。 我已经用另一个镜像下载了zip4j库,但是我不知道如何使用它。有没有人可以粘贴使用zip4j解压缩密码保护zip文件的示例代码? zip4j网站 非常感谢! 问题答案: 请尝试以下操作,并确保您使用的是最新的Zip4j库(1.3.1):

  • 问题内容: 我正在尝试使用python从zip存档中提取特定文件。 在这种情况下,请从apk本身中提取apk的图标。 我目前正在使用 哪个起作用,在我的脚本目录中创建的是temp,加上与APK内部文件相同的路径。 我真正想要的是结束。 有什么方法可以直接使用zip命令直接执行此操作,还是我需要解压缩然后移动文件,然后手动删除目录? 问题答案: 您可以使用zipfile.ZipFile.open:

  • 我试图使用python从zip存档中提取特定的文件。 在这种情况下,从apk本身提取apk的图标。 我目前正在使用 这确实工作,在我的脚本目录中,它正在创建,这是temp加上文件在apk中的相同路径。 我真正想要的是以。 有没有办法直接用zip命令来实现这一点,或者我需要提取文件,然后移动文件,然后手动删除目录?

  • 问题内容: 我必须使用SFTP从ZIP存档(只有一个文件,我知道它的名称)中获取文件内容。我唯一拥有的是ZIP的。大多数示例说明如何使用以下语句获取内容: 但是正如我所说,我的本地计算机上没有ZIP文件,也不想下载它。是够看了? UPD: 这是我的方法: 问题答案: 好吧,我已经做到了: 它可以帮助我阅读ZIP的内容而无需写入另一个文件。