这是我的功能,我使用lua-cjson表示它完全支持UTF-8
function getPersonaName(sid64)
local cjson = require "cjson"
local r = http.request("http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=###&steamids=" .. sid64)
results = cjson.decode(r)
personaname = results.response.players[1].personaname
return personaname
当用户有一些像♡这样的特殊字符时,我的Lua代码将personaname作为
返回tam ♡
而不是
tam ♡
如何正确返回确切结果?
答案 0 :(得分:6)
这是一个编码问题。无论您输出的结果是什么,都不会期望您发送的UTF-8编码字符,因此它会尽可能地显示它。
如果您控制显示器的一面,那么您需要考虑更改它所期望的编码(或者研究如何将UTF-8转换为它所期望的任何编码)。
如果您无法控制显示屏,那么除了告知您的用户他们需要正确配置他们的一面之外,您无法做到这一点。