【问题标题】:Python ZipFile path separatorsPython ZipFile 路径分隔符
【发布时间】:2011-11-18 02:09:36
【问题描述】:

如果我使用 Python ZipFile 库解压缩 Zip 文件,该文件是在 Windows 上创建的,但我的代码在类 Unix 上运行,路径分隔符是否总是 Unix 样式?

【问题讨论】:

  • 似乎必须如此,因为它没有存储为字符串。我当然希望如此:)
  • 你希望如此!但是当你与电脑打交道时,希望与任何事情都无关......

标签: python zip zipfile


【解决方案1】:

在内部,ZipFile 根据zip file specification 的要求存储正斜杠。

在外部,它们使用os.sep 进行翻译,因此它将与给定平台上通常预期的内容相匹配。

代码参考:

【讨论】:

  • 谢谢!我认为这是真的,但最好有证据。
  • 请注意,这种转换仅适用于在 ZIP 存档中创建条目时。访问现有成员时(例如使用zip_file.read('dir/file.txt'))必须始终使用斜杠。
  • +1 用于指向 zip 文件规范的链接。谢谢!!!以下是相关部分: 4.4.17 文件名:(变量) 4.4.17.1 文件名,带有可选的相对路径。存储的路径不得包含驱动器或设备号,或前导斜杠。所有斜杠必须是正斜杠“/”而不是反斜杠“\”,以便与 Amiga 和 UNIX 文件系统等兼容。如果输入来自标准输入,则没有文件名字段。
猜你喜欢
  • 2018-11-17
  • 2012-11-20
  • 2014-07-29
  • 2018-04-25
  • 2011-06-03
  • 1970-01-01
  • 2015-02-09
  • 2017-03-10
  • 1970-01-01
相关资源
最近更新 更多