C#与Unity 数据存储


使用Json存储数据

1.创建Json文件,直接创建txt文件,将后缀名改为xx.json

2.Json文件的数据格式,中括号表示列表,即中括号下的每个逗号隔开的内容都是列表的每个元素,花括号表示对象,冒号前面的表示属性名(即标识符),冒号后面为属性值

当然也可以没有中括号,直接保存一个对象,即json可以保存对象,也可以保存列表,或者说,json根据保存的内容自动调整格式,即对象里面如果有列表也会被以列表的格式保存

3.程序操作Json文件,这里需要使用到using Newtonsoft.Json;命名空间,这里使用NuGet添加(需要说明的是,在unity项目中NuGet添加的外部程序无法使用,需要将Csharp文件夹下package里由Nuge下载的dll文件添加到Asset文件夹下,感觉由更简单的方式,知道的朋友回复一下)

代码如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using System.IO;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            //从Json直接读取对象
            //string s = File.ReadAllText("TextFile1.json");
            //Per p = JsonConvert.DeserializeObject<Per>(s);
            
            //Console.Write(p);


            Per p2 = new Per("lidong", "45");
            //将对象存放到Json
            string os = JsonConvert.SerializeObject(p2);


            List<Per> list = new List<Per>();
            //list.Add(p);
            list.Add(p2);
            //将链表存放到Json
            //string os = JsonConvert.SerializeObject(list);

            //重写会清空文件重新填入内容
            File.WriteAllText("TextFile1.json", os);
            Console.Write(os);
            Console.ReadKey();
        }
    }

    public class Per
    {
        public string name { get; set; }
        public string age { get; set; }

        public Per(string _name,string _age)
        {
            name = _name;
            age = _age;
        }

        public override string ToString()
        {
            return name + "," + age;
        }
    }
}

使用xml存储数据

111

使用scriptobject存储数据

111

使用playprefab存储数据

111

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM