using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using UnityEngine;
namespace MuHua {
/// json解析与保存
public static class JsonTool {
/// 内部包装类
private class Pack { public T data; }
/// 把对象转换为Json字符串
/// 对象
public static string ToJson(T obj) {
if (obj == null) return "null";
if (obj.GetType().GetInterface("IList") != null) {
Pack pack = new Pack();
pack.data = obj;
string json = JsonUtility.ToJson(pack);
return json.Substring(8, json.Length - 9);
}
return JsonUtility.ToJson(obj);
}
/// 解析Json
/// 类型
/// Json字符串
public static T FromJson(string json) {
if (json == "null" && typeof(T).IsClass) return default(T);
if (typeof(T).GetInterface("IList") != null) {
json = "{\"data\":{data}}".Replace("{data}", json);
Pack Pack = JsonUtility.FromJson>(json);
return Pack.data;
}
return JsonUtility.FromJson(json);
}
}
}