local utf8 = require("utf8")
local function string_to_unicode(str)
local unicode_str = {}
for _, codepoint in utf8.codes(str) do
local hex_str = string.format("\\u%04X", codepoint)
table.insert(unicode_str, hex_str)
end
return table.concat(unicode_str)
end
local function unicode_to_string(unicode_str)
local decoded_str = unicode_str:gsub("\\u(%x%x%x%x)", function(hex)
local codepoint = tonumber(hex, 16)
return utf8.char(codepoint)
end)
return decoded_str
end
local chinese_str = "只奶当前目标"
local unicode_str = string_to_unicode(chinese_str)
print(unicode_str)
local unicode_str = "\\u53ea\\u5976\\u5f53\\u524d\\u76ee\\u6807"
local chinese_str = unicode_to_string(unicode_str)
print(chinese_str)