UTF-8 是一种用于存储支持多语言的 Unicode 字符串的编码方式。
Unicode 和 UTF-8 是在上世纪90年代以后开发的,因此在80年代开发的ZIP格式不支持 UTF-8。 然而,随着 ZIP 格式成为压缩文件的标准格式,ZIP 格式也需要支持 Unicode,于是开发出各种能够在 ZIP 文件处理 UTF-8 字符串的方法。
Bandizip 支持两种方式:一、将文件名直接保存为 UTF-8;二、将文件名保存为 MBCS 并在扩展字段再保存 UTF-8 文件名。

用ZIP压缩文件时,将文件名以 Unicode(UTF-8)保存
这是将压缩在 ZIP 文件中的文件名以 UTF-8 保存的方式。 此为 APPNOTE 定义的标准 UTF-8 文件名保存方式,但有些压缩程序时常出现无法正确识别或因错误处理而无法正常显示文件名(出现乱码)的问题。
用ZIP压缩文件时,将Unicode(UTF-8)文件名保存在扩展字段
这是将文件名保存为 MBCS 并在 ZIP 格式的扩展字段再保存 UTF-8文件名的方式。 该方式也由 APPNOTE 定义为 Info-ZIP Unicode Path Extra Field。 由于将文件名另外保存在扩展字段,ZIP 文件大小可能会增大数十字节, 但基本上文件名保存为 MBCS,因此兼容性更佳。
在使用不同语言的操作系统上,如果使用支持该扩展字段的压缩程序(7-Zip、WinRAR、WinZip),文件名不会出现乱码。
下图是在日文版 Windows 使用 7-Zip 打开在韩文版 Windows 压缩的文件的画面。

用 TAR/TGZ 压缩文件时,将文件名以 Unicode(UTF-8)保存

TAR或TGZ等格式是主要在Unix使用的压缩格式,Unix系统使用UTF-8文件名。启用该功能后压缩文件,即便文件名中含有韩文,也能在Unix系统上正常解压。
但Windows的有些程序可能无法正确识别TAR/TGZ格式的UTF-8代码页。
源文来自:https://cn.bandisoft.com/bandizip/help/utf8/
发布于 2025-04-18
广东