ZipEntry的路径名的文件分隔符?

ZIP条目存储条目的完整路径名,因为(我确定是下一部分)ZIP存档未组织为目录。元数据包含有关应如何存储文件的信息(在目录内部)。

如果在Windows中创建一个ZIP文件,则在另一个OS(例如Mac OS

X)中解压缩数据时,文件结构将保持与Windows中相同的状态。这是因为解压缩程序旨在处理此问题,还是因为ZIP中的文件分隔符是标准的?

我问这个问题是因为我试图使用压缩文件的名称在ZIP文件中找到一个条目。但是,我应该使用哪个文件分隔符使其在Windows以外的系统上运行?

我正在使用Java及其方法:.getName()的,ZipEntry使用Windows文件分隔符为我提供了路径\。如果我使用java

File.separator分隔符使其在另一个OS上运行就足够了吗?还是我必须尝试使用​​每个可能的分隔符来查找我的文件?

@Eren Yilmaz给出的答案正确地描述了许多工具(甚至您可以自己编写的工具)的功能。但是,鉴于.zip标准清楚地记录了 如何做,因此

更新正确的答案

回答:

该.zip文件规范状态:

4.4.17.1文件名,带有可选的相对路径。存储的路径不得包含驱动器或设备字母或斜杠。为了与Amiga和UNIX文件系统兼容,所有斜杠必须为正斜杠“

/”,而不是反斜杠“ \”。如果输入来自标准输入,则没有文件名字段。

以上是 ZipEntry的路径名的文件分隔符? 的全部内容, 来源链接: utcz.com/qa/429058.html

回到顶部