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