文件操作

ZIP 解压工具

完全在浏览器中解压 ZIP 文件,可查看列表、预览内容并下载。自动检测并修复 Windows(Shift_JIS)压缩的 ZIP 文件在其他环境下出现的文件名乱码问题。文件内容绝不会上传到服务器。


ZIP 解压小技巧

  • 文件名出现乱码,大多是因为 ZIP 格式本身在很多情况下并不保存"文件名所使用的字符编码"信息。在日文版 Windows 上创建的 ZIP 通常是 Shift_JIS 编码,其他情况下大多是 UTF-8,因此出现乱码时可以在编码下拉菜单中尝试切换为 Shift_JIS。
  • 如果 ZIP 内部已明确标记某个文件名使用 UTF-8 编码,该文件名不会带有 ? 标记。只有带此标记的文件名才是"根据推测解码"得到的。
  • 点击文件夹行可以展开或折叠。点击文件行,文本或图片文件可以直接在当前位置预览。
  • 在 Chrome 或 Edge 中,使用"全部解压"并选择文件夹后,可以按原有的目录结构直接写出。在其他浏览器中则会逐个下载文件,无法保留目录结构(会将路径以下划线的形式附加到文件名中)。

常见问题

不会。解压处理完全在浏览器内完成,文件内容绝不会发送到服务器。

不支持。尝试提取文件时会显示错误。请先解除密码保护,再重新加载该 ZIP 文件。

极少数情况下,ZIP 可能是在旧版 Mac(Mac Roman 编码)上创建的,或包含其他语言(韩语、中文等)的文件名。请尝试下拉菜单中的其他选项。如果仍无法解决,可能是创建该 ZIP 的工具或操作系统使用了特殊的编码。

可以处理,但由于处理过程占用浏览器内存,超过数 GB 的 ZIP 文件可能会运行缓慢,在某些环境下甚至可能失败。
ツールくん

闲话 ― ZIP 文件名为何会出现乱码

ZIP 格式诞生于 1989 年,当时并没有明确记录文件名字符编码的机制。各国、各操作系统都直接使用本国的字符编码(日语环境为 Shift_JIS,西欧语言环境为 Windows-1252 等)写入文件名,因此在不同环境下打开时出现乱码,可以说是"规范内的正常现象"。

为了解决这个问题,大约从 2007 年起加入了名为"语言编码标志(EFS)"的机制。它利用 ZIP 每个条目标志位中的一位,可以明确标注"该文件名以 UTF-8 编写"。但由于老旧的 ZIP 工具,以及部分至今仍未设置该标志的软件依然存在,即使到了 2020 年代,Windows 与 Mac 之间的文件名乱码问题也尚未完全解决。

需要说明的是,这种乱码并非"数据本身"的损坏。文件的实际内容(文本或图片的字节数据)完好无损,只是文件名这一"元数据"被按照错误的规则解析了而已。正因如此,只要知道正确的编码,就可以像本工具这样事后修正,恢复出正确的文件名。