Closed HikariCalyx closed 1 month ago
在 GMS 的欧洲区存在之前,EMS 是早期 NEXON 欧洲公司面向欧洲国家推出的欧服,该客户端内包含多份不同语言的 String.wz。曾经推出的客户端的安装包可在这里下载: https://archive.org/download/emssetups2024
以 EMS v27 版本内置的 StringFR.wz 为例,这是法语的 String 文件,在 .NET 4.x 版本的 WzComparerR2 下,欧洲语言常见的带重音符号的字母会被正常显示。在简体中文的系统编码下,带重音符号的字母以及后续的字母会组合成一个奇怪的汉字,这一点可暂且忽略,因为实际在 GMS 中也存在此情况。导出的 XML 文件只需使用 Visual Studio Code 更换打开的编码方式就可解决。 例如,下图中的 Serpent rétro bleu 在简体中文系统下会显示为 Serpent r閠ro bleu,将导出后的 XML 文件以 GBK 编码保存,再以 ISO 8859-1 编码打开后以 UTF-8 保存即可正常显示。
然而,在 .NET 6.0 版本的 WzComparerR2 下,欧洲语言常见的带重音符号的字母会被异常编码成 U+FFFD 字符,导出的 XML 文件也是如此,通用设置内的 WZ 默认编码选项也无法改变编码结果。
net462可以用iso8859正常解码
net6好像忘记加载codepage包以至于配置无法生效。
但是我突然觉得有更好的解释方案,需要验证一下。
Fixed.
在 GMS 的欧洲区存在之前,EMS 是早期 NEXON 欧洲公司面向欧洲国家推出的欧服,该客户端内包含多份不同语言的 String.wz。曾经推出的客户端的安装包可在这里下载: https://archive.org/download/emssetups2024
以 EMS v27 版本内置的 StringFR.wz 为例,这是法语的 String 文件,在 .NET 4.x 版本的 WzComparerR2 下,欧洲语言常见的带重音符号的字母会被正常显示。在简体中文的系统编码下,带重音符号的字母以及后续的字母会组合成一个奇怪的汉字,这一点可暂且忽略,因为实际在 GMS 中也存在此情况。导出的 XML 文件只需使用 Visual Studio Code 更换打开的编码方式就可解决。 例如,下图中的 Serpent rétro bleu 在简体中文系统下会显示为 Serpent r閠ro bleu,将导出后的 XML 文件以 GBK 编码保存,再以 ISO 8859-1 编码打开后以 UTF-8 保存即可正常显示。
然而,在 .NET 6.0 版本的 WzComparerR2 下,欧洲语言常见的带重音符号的字母会被异常编码成 U+FFFD 字符,导出的 XML 文件也是如此,通用设置内的 WZ 默认编码选项也无法改变编码结果。