unity3d使用litjson中文显示的问题
我们在使用litjson时它的编码方式是unicode的,所以我将json转成string输出时显示的是unicode的编码。这样我们显示或者保存中文时不是很方便。我们可以将中文的unicode转成能识别的GBK编码。
using UnityEngine;
using System.Collections.Generic;
using Utils;
using LitJson;
using System;
using System.Text.RegularExpressions;
public class Script1 : MonoBehaviour
{
public void OnTestJson()
{
JsonData sData = new JsonData();
JsonData data1 = new JsonData();
JsonData data2 = new JsonData();
data1["等级"] = "54";
data1["位置"] = "m=1000,x=33,y=21"; //新手村
data2["等级"] = "56";
data2["位置"] = "m=1001,x=58,y=97"; //桃园镇
sData["张三"] = data1;
sData["李四"] = data2;
string jsonStr = sData.ToJson();
Regex reg = new Regex(@"(?i)\\[uU]([0-9a-f]{4})");
var ss = reg.Replace(jsonStr, delegate(Match m) { return ((char)Convert.ToInt32(m.Groups[1].Value, 16)).ToString(); });
print(ss);
}
}