Unity C# Json技巧(上)
敘述:
當我們在製作遊戲時,時常會需要做數據的存讀,Json就是一個很方便的儲存方式,簡單來說就是把數據儲存成文檔紀錄遊戲狀態,如果你還不是很懂就按照教學做一遍吧!
【正文開始】
資料儲存:
1.開啟一個空專案
2.在資料夾下新增一個C#程式碼(這裡我叫做JsonDemo)
3.JsonDemo下的程式碼如下(分段解說):
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO;
public class JsonDemo : MonoBehaviour
{
void Start()
{
//宣告一個Listy作為道具列表並存入兩個道具
List<string> equips = new List<string>();
equips.Add("sword");
equips.Add("shield");
//用剛剛宣告好的Class創建一個儲存數值的物件,並給予數值欄位對應的數值(例如生命設定為100,金錢250....)
Data newData = new Data
{
health = 100,
money = 250,
equip = equips
};
//把剛剛創建好的數值物件轉為Json字串,並用JsonInfo參數儲存,接下來把這個字串寫入指定的檔案位置(下面紅色字請改成自己的路徑《都可以》最後面是檔案名稱)
string jsonInfo = JsonUtility.ToJson(newData,true);
File.WriteAllText("G:/JsonDemo/Assets/file1", jsonInfo);
Debug.Log("寫入完成");
}
}
//要儲存的資料用一個Class去儲存,裡面可以放各類型的資料(但是不能放Dictionary 很重要!!!我被呼弄很久)
public class Data
{
public float health;
public int money;
public List<string> equip;
}
4.把這段程式碼拖曳到MainCamera上
5.執行Unity,接下來就可以在console中看到「寫入完成」
6.檔案寫入完成後我們就可以去指定的路徑下檢查是否有該檔案,這裡我是存在這個專案的Asset路徑下叫做File1
7.File1內容,儲存完成
【結語】
本篇用Unity內建的API來存JSON檔,下一篇也是同樣系列會教各位如何用這個API去讀取JSON檔中的資訊