歡迎加入Unity業內qq交流羣:956187480
qq掃描二維碼加羣
三種方法,自取:https://download.csdn.net/download/qq_37310110/11717676
方案一:
用unity自帶的工具類
#region Unity自己的工具JsonUtility
public static string ObjectToJson(object obj)
{
return JsonUtility.ToJson(obj); ;
}
public static T JsonToObject<T>(string jsonStr)
{
return JsonUtility.FromJson<T>(jsonStr); ;
}
#endregion
方案二:
用工具LitJson.dll。
1.轉字符串的時候unicode沒有轉成漢子需要自己另外處理,
2.在ios端此工具無效
#region LitJson用法
//對象序列化Json
public static string JsonSerialize(object obj)
{
return JsonMapper.ToJson(obj);
}
//Json反序列化
public static object JsonDeSerialize(string jsonStr)
{
return JsonMapper.ToObject(jsonStr);
}
public static T JsonDeSerialize<T>(string jsonStr)
{
return JsonMapper.ToObject<T>(jsonStr);
}
//創建Json數據
public static string CreatJsonData(string[] keys, string[] values)
{
JsonData jsonData = new JsonData();
for (int i = 0; i < keys.Length; i++)
{
jsonData[keys[i]] = values[i];
}
return jsonData.ToJson();
}
/// <summary>
/// 創建Json數據 數據嵌套
/// </summary>
/// <param name="keys">正常key</param>
/// <param name="index">嵌套key下標</param>
/// <param name="values">正常value</param>
/// <param name="nestKeys">嵌套keys</param>
/// <param name="nestValues">嵌套values</param>
/// <returns></returns>
public static string CreatJsonData(string[] keys,int index, string[] values, string [] nestKeys, string [] nestValues)
{
JsonData jsonData = new JsonData();
for (int i = 0; i < keys.Length; i++)
{
if (i==index)
{
jsonData[keys[i]] = new JsonData();
for (int j = 0; j < nestValues.Length; j++)
{
jsonData[keys[i]][nestKeys[j]] = nestValues[j];
}
}
else
{
jsonData[keys[i]] = values[i];
}
}
return jsonData.ToJson();
}
#endregion
方案三:
用工具NewTonSoft.Json.dll
#region Newtonsoft 用法
public static string NJsonSerialize(object obj)
{
return JsonConvert.SerializeObject(obj);
}
public static T NJsonDeSerialize<T>(string jsonStr)
{
return JsonConvert.DeserializeObject<T>(jsonStr);
}
#endregion
https://download.csdn.net/download/qq_37310110/11717676
歡迎加入Unity業內qq交流羣:956187480
qq掃描二維碼加羣