使用 Lua 的繁体中文版

我将一些包含中文字符的 Lua 脚本从简体中文转换成繁体中文,现在中文字符使用 cp950 编码。

现在我将我的 Win7 机器区域设置切换为 zh_TW 并重新启动。一切似乎都好,具有繁体中文字符的脚本被正确地显示。

但是,当我编译这些脚本时,它们会出现“无效的转义字符串”错误。

例如:

msg="外功系普攻攻擊"
print(msg)

结果是:

外巨t普攻攻擊

看一下字符串的十六进制,它是

\xa5~\xa5\\\xa8t\xb4\xb6\xa7\xf0\xa7\xf0\xc0\xbb

所以是 Lua 没有转义字符串。

现在的问题是,我能否解决这个问题?我该如何让脚本编译成功?我的源脚本不能编码为 utf-8,如果可以,就很容易了。

点赞
用户3145831
用户3145831

这是一个非常有名的cp950(Big5)编码问题,称为“許功蓋”问题,请参见http://zh.wikipedia.org/wiki/%E5%A4%A7%E4%BA%94%E7%A2%BC

因此,utf8是解决此问题的最佳方法。

2015-01-14 02:40:43