代码:
using System.Collections; using System.Collections.Generic; using UnityEngine; public class SingleTon<T> : MonoBehaviour where T : SingleTon<T> { private static T instance; public static T Instance { get { if (instance == null) { instance = FindObjectOfType<T>(); if (instance == null) { instance = new GameObject("_" + typeof(T).Name).AddComponent<T>(); DontDestroyOnLoad(instance); } } return instance; } set { } } }csharp运行
代码:
using UnityEngine; using System.Collections; using LitJson; using System.Text; //使用StringBuilder using System.IO; //使用文件流 public class JsonHelper : MonoBehaviour { public static string GetJson() { StringBuilder sb = new StringBuilder(); JsonWriter writer = new JsonWriter(sb); bool mode = GameManager.Instance.mode; int totalMoves = GameManager.Instance.totalMoves; int[,] chessBoard = GameManager.Instance.chessBoard; MapData map = new MapData(); map.mode = mode; map.totalMoves = totalMoves; map.chessBoard = new int[3 * 3]; string str = ""; // 打印用 for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { map.chessBoard[i * 3 + j] = chessBoard[i, j]; str = str + " " + chessBoard[i, j].ToString(); } } writer.WriteObjectStart();//字典开始 writer.WritePropertyName("Map"); // 记录宽度 writer.Write(JsonMapper.ToJson(map)); writer.WriteObjectEnd(); return sb.ToString(); //返回Json格式的字符串 } //保存Json格式字符串 public static void SaveJsonString(string JsonString) { FileInfo file = new FileInfo(Application.persistentDataPath + "/JsonData.Json"); StreamWriter writer = file.CreateText(); writer.Write(JsonString); writer.Close(); writer.Dispose(); } //从文件里面读取json数据 public static string GetJsonString() { try { StreamReader reader = new StreamReader(Application.persistentDataPath + "/JsonData.Json"); string jsonData = reader.ReadToEnd(); reader.Close(); reader.Dispose(); return jsonData; } catch { return ""; } } } public class MapData { public bool mode; public int totalMoves; public int[] chessBoard; }csharp运行
武汉格发信息技术有限公司,格发许可优化管理系统可以帮你评估贵公司软件许可的真实需求,再低成本合规性管理软件许可,帮助贵司提高软件投资回报率,为软件采购、使用提供科学决策依据。支持的软件有: CAD,CAE,PDM,PLM,Catia,Ugnx, AutoCAD, Pro/E, Solidworks ,Hyperworks, Protel,CAXA,OpenWorks LandMark,MATLAB,Enovia,Winchill,TeamCenter,MathCAD,Ansys, Abaqus,ls-dyna, Fluent, MSC,Bentley,License,UG,ug,catia,Dassault Systèmes,AutoDesk,Altair,autocad,PTC,SolidWorks,Ansys,Siemens PLM Software,Paradigm,Mathworks,Borland,AVEVA,ESRI,hP,Solibri,Progman,Leica,Cadence,IBM,SIMULIA,Citrix,Sybase,Schlumberger,MSC Products...