unity3d使用litjson中文显示的问题

  我们在使用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 }

显示如下

转载请注明出处http://www.cnblogs.com/fyluyg/p/5963052.html

转载于:https://www.cnblogs.com/fyluyg/p/5963052.html

你可能感兴趣的:(unity3d使用litjson中文显示的问题)