UnityでJSONをファイルとして書き出す/読み込むメモ
UnityでJSONを書き出し/読み込みする関数を作ったのでメモします。
///<summary> ///dataからjsonを作成してpathに書き出す ///</summary> public static void WriteJson<T>(string path, T data) { if (Directory.Exists(Path.GetDirectoryName(path))) { string json = JsonUtility.ToJson(data); BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Create(path); bf.Serialize(file, json); file.Close(); Debug.Log("writed"); } else { Directory.CreateDirectory(Path.GetDirectoryName(path)); WriteJson<T>(path, data); } } ///<summary> ///pathに保存されているjsonを読み込みdataに格納 ///</summary> public static void ReadJson<T>(string path, out T data) { BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(path, FileMode.Open); string json = (string)bf.Deserialize(file); file.Close(); data = JsonUtility.FromJson<T>(json); }