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檔中的資訊

arrow
arrow

    『迷途』 發表在 痞客邦 留言(0) 人氣()