选择文件
选择文件名乱码的 .zip。
在浏览器里修复 zip 文件名乱码
当一个 .zip 是在日文(或其他 CJK)Windows 上打包的,文件名往往会被存成一种旧式代码页——Shift_JIS / CP932——却没有设置 UTF-8 标志位。把这种压缩包拿到 Mac 上,或者放到另一套语言设置的 Windows 上打开,名字就会变成乱码:像 譁・喧縺・ 之类的怪字符,而不是原本的文件名。文件在 macOS 和日文 Windows 之间来回传递时,这种情况经常发生。
把一个 .zip 拖进来,它会把这些旧式文件名重新解码回正确的 UTF-8,再写出一个设置了 UTF-8 标志位的新 .zip——这样名字在哪里解压都能正常显示。文件内容会原样复制过去,只有文件名被修复。本来就已经正确存成 UTF-8 的名字会被原封不动地保留,所以不会出现二次解码。
为什么你的压缩包不会离开你的设备
这里的隐私是结构性的,不是一句承诺。没有上传这一步,因为根本没有服务器可上传:
- .zip 完全在你的浏览器里读取和重建。
- 页面以静态文件的形式提供,不会带着你的压缩包发出任何请求。
- 源代码是公开的,任何人都能查看(MIT)。
- 它可以离线使用——而这只有在没有任何东西离开设备的前提下才可能做到。
想自己确认的话,运行时打开浏览器的网络(Network)面板看看——没有任何请求带着你的文件。 查看源代码。
怎么用
-
拖入你的 .zip
点击选择一个文件名乱码的 .zip,或者把它拖到页面任意位置。一次处理一个压缩包。
-
它会重新解码文件名
旧式的 Shift_JIS / CP932 文件名会被解码回 UTF-8。文件内容保持不变;本来就是 UTF-8 的名字会原样保留。
-
下载修复好的压缩包
它会写出一个设置了 UTF-8 标志位的新 .zip 并自动下载,同时告诉你修复了多少个文件名。
常见问题
我的 .zip 会被上传到哪里吗?
不会。压缩包完全在你的浏览器里读取和重建。这里没有服务器那一端,所以你的文件没有离开设备的路径。源代码是公开的,你可以在浏览器的网络(Network)面板里自己确认这一点。
zip 文件名为什么会变成乱码?
在日文(或其他 CJK)Windows 上打包的 .zip 往往会把文件名存成旧式代码页——Shift_JIS / CP932——却没有设置“这些名字是 UTF-8”的那个标志位。当压缩包在 Mac 或另一套语言设置的 Windows 上打开时,这些字节会被按错误的编码读取,于是你看到的就是乱码(mojibake),而不是真正的文件名。
这个工具到底改了什么?
只改文件名。它把旧式的 Shift_JIS / CP932 名称重新解码为正确的 UTF-8,再写出一个设置了 UTF-8 标志位的新 .zip,这样名字在哪里解压都能正常显示。每个文件的内容都是逐字节原样复制,不做改动。
它会不会把本来正确的名字弄坏?
不会。本来就正确存成 UTF-8 的名字会被识别出来并原封不动地保留,所以它们不会被二次解码、变成新的乱码。工具会报告它实际修复了多少个名字。
支持带密码的(加密)压缩包吗?
不支持。加密压缩包无法处理,工具会明确告诉你,而不是生成一个坏掉的文件。请先把压缩包解密、或者不带密码重新保存一份,再来修文件名。
它能离线使用吗?
能。它是一个 PWA。首次访问后就会被缓存,所以没有网络连接也能用。你还可以把它添加到主屏幕。