untiy 使用自带JsonUtility实现保存本地与读取

最近要写一个持久化数据的功能,来记录一下,网上重复太多也不便捷 ,我就直接来个干脆的

    StreamWriter writer;
    Date a=new Date();
   public class Date //自己创建个类 用于保存你的数据
    {
        public List<Vector3> PosName;
        public bool is_bool;
        public int weight;
    }
//你自己创建一个方法 然后把他放进去 设置你的参数 
        a.PosName = Pos;
        a.is_bool = Ispattern;
        string ss = JsonUtility.ToJson(a,true);//把数据转换成字符串
        string files = Application.streamingAssetsPath + "/Date.json";
        if (!File.Exists(files))//如果没有就创建一个 有就删除在生成,这是为了避免生成多个文件 你觉得麻烦可以改
        {
            writer = File.CreateText(files);
        }
        else
        {
            File.Delete(files);
            writer = File.CreateText(files);
        }
        writer.Flush();
        writer.Dispose();
        writer.Close();
        
        File.WriteAllText(files, ss);//这个就是把数据保存到文件里面
        
//这里就是读取 读取到的a你随便弄
       if (!File.Exists(Application.streamingAssetsPath + "/Date.json"))
        {
            return;
        }
        string file= Application.streamingAssetsPath + "/Date.json";      
        StreamReader streamreader = new StreamReader(file);
        Date a = JsonUtility.FromJson<Date>(streamreader.ReadToEnd());

如果对你有用给个赞!

你可能感兴趣的:(unity,unity,json)