using System.Collections; using System.Collections.Generic; using UnityEngine; using System; using System.IO; public class JsonController : MonoBehaviour { public static JsonController instance; private void Awake() { if (instance == null) instance = this; } /// <summary> /// 對資源的寫入操做 /// </summary> /// <typeparam name="T">數據的類型</typeparam> /// <param name="data">須要寫入的數據</param> /// <param name="path">須要寫入數據的地址</param> public void Write<T>(T data, string path) { string json = JsonUtility.ToJson(data); File.WriteAllText(path, json); } /// <summary> /// 建立數據文件 /// </summary> /// <typeparam name="T">數據的類型</typeparam> /// <param name="data">須要寫入的數據</param> /// <param name="path">須要寫入數據的地址</param> public void CreateFile<T>(T data, string path) { if (!File.Exists(path)) { File.Create(path).Dispose(); string json = JsonUtility.ToJson(data); File.WriteAllText(path, json); } } /// <summary> /// 讀取資源 /// </summary> /// <typeparam name="T">數據的類型</typeparam> /// <param name="path">須要讀取數據的地址</param> /// <returns></returns> public T ReadFile<T>(string path) { string json = File.ReadAllText(path); T data = JsonUtility.FromJson<T>(json); return data; } }