Corona Lua的string.sub与ÅÄÖ发生冲突

时间:2012-11-10 22:49:08

标签: lua corona

这个片段让我的模拟器崩溃了。

s = "stämma"
s1 =  string.sub(s,3,3)
print(s1)

它似乎把我的角色处理为零,任何想法?

乔金姆

1 个答案:

答案 0 :(得分:3)

我假设您使用的是UTF-8编码。

在UTF-8中,字符可以具有可变数量的字节,介于1到4之间。"ä"字符(228)使用两个字节0xC3 0xA4进行编码。

指令string.sub(s, 3, 3)从字符串(0xC3)返回第三个字节第三个字符。由于此字节本身是无效的UTF-8,因此Corona无法显示该字符。

另见Extract the first letter of a UTF-8 string with Lua