我們在使用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 }
顯示如下