创建 ZIP 文件

在浏览器里把任意文件打包成一个 .zip 压缩包,不上传任何内容。

选择文件

选择要打包进 ZIP 的文件。

🗜️
点击选择文件
或把文件拖到页面任意位置
任意文件类型
0 · 0 B

在浏览器里打包文件

这个工具会把你选的文件——文档、照片、代码、整个文件夹——打包成一个 .zip 压缩包。想加多少都行;遇到同名文件会自动加上序号区分(比如 a.txt、a (1).txt),不会有谁被悄悄覆盖掉。

打包过程用 @zip.js/zip.js 在你的浏览器里运行。文件在本地读取,压缩包也在本地生成,所以没有上传,也不用等服务器。

文件名写入时带上了 UTF-8 标记,所以中文等非 ASCII 名称在 Windows 资源管理器里能正确解压出来,不会变成乱码——用错方式做出来的压缩包常会碰到这个问题。

为什么你的文件留在设备上

这里的隐私来自结构,而不是承诺。没有上传这一步,因为根本没有可以上传的服务器:

  • 压缩包完全在你的浏览器里生成。
  • 页面以静态文件的形式分发,不会发出携带你文件数据的请求。
  • 源代码是公开的,谁都能看(MIT)。
  • 它能离线使用,而这只有在没有任何东西离开设备的前提下才可能做到。

想自己确认的话,打包时打开浏览器的网络(Network)面板看看——没有任何请求带走你的文件。 查看源代码。

怎么用

  1. 添加文件

    点击选择文件,或者直接把文件拖到页面任意位置。想加多少都行,文件夹也可以。

  2. 核对列表

    看一眼要打包的内容。同名文件会自动加序号区分,打包前你也可以把不想要的去掉。

  3. 下载压缩包

    生成压缩包,下载一个 .zip 文件。文件名会保留原本的字符,包括在 Windows 上的非 ASCII 名称。

常见问题

我的文件会被上传到哪里吗?

不会。压缩包完全在你的浏览器里生成。没有服务器这一部分,所以你的文件没有离开设备的通道。源代码是公开的,你可以在浏览器的网络(Network)面板里自己确认。

什么类型的文件都能打包吗?

可以。它对任意文件都管用——文档、照片、代码、压缩包、整个文件夹。不限于某一种类型,也不会做任何转换或重新编码;你的文件原封不动地放进压缩包。

为什么中文文件名在压缩包里有时会变成乱码?

ZIP 格式最初假定的是旧式代码页(比如简体中文的 936/GBK),而不是 Unicode。如果一个压缩包存了非 ASCII 名称却没有标记成 UTF-8,Windows 资源管理器就会用错编码去解码,于是出现乱码。这个工具会设置 UTF-8 文件名标记,所以中文等非 ASCII 名称能正确解压。

如果两个文件同名会怎样?

第二个同名文件会自动加上序号(比如 a.txt 变成 a (1).txt),所以它不会悄悄覆盖掉第一个。两个文件都会保留,每一项在压缩包里都保持独立。

能离线使用吗?

可以。它是一个 PWA。第一次访问后就被缓存下来,所以没有网络也能打包。你还可以把它添加到主屏幕。

对文件大小或数量有限制吗?

没有固定的限制。因为一切都在你的浏览器里运行,实际上限取决于设备的内存。文件特别多或特别大时,可能会慢一些,或者需要更多内存。