如何创建一个空的zip文件?

16 投票
3 回答
12218 浏览
提问于 2025-04-18 16:29

我正在使用 zipfile,在某些情况下,我需要创建一个空的压缩文件作为占位符。请问我该怎么做呢?

我知道以下内容:

在版本 2.7.1 中有所更改:如果文件是以 'a' 或 'w' 模式创建的,然后在没有添加任何文件到压缩包的情况下关闭,那么空压缩包的相关结构会被写入文件。

但我的服务器使用的是更低的版本,2.6。

3 个回答

1

如果你在使用Linux系统的话,可以用下面这条命令:

echo 504b0506000000000000000000000000000000000000 | xxd -r -p > empty.zip

这条命令的意思是:先把一串数字(其实是十六进制的代码)输出,然后通过一个工具把它转换成一个文件,最后把这个文件命名为“empty.zip”。

11

你可以简单地这样做:

from zipfile import ZipFile
archive_name = 'test_file.zip'
with ZipFile(archive_name, 'w') as file:
  pass
22

你可以不使用 zipfile 来创建一个空的压缩文件,方法如下:

empty_zip_data = b'PK\x05\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'

with open('empty.zip', 'wb') as zip:
    zip.write(empty_zip_data)

empty_zip_data 是一个空压缩文件的数据。

撰写回答