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