原文地址:Unity3D游戏开发之游戏读/存档功能在Unity3D中的实现
感谢风宇冲Unity3D教程宝典之两步实现超实用的XML存档一文提供相关思路!
using Newtonsoft.Json;错误,则是因为缺少Newtonsoft.JSON库,请自行下载。
Newtonsoft.Json文件存放在Unity位置如下所示
UNITY对于JSON存储的思路以及介绍,参考资料已经说明很清楚
本文章着重代码说明,说明代码的作用
-----------------------------------------------------TestSave.cs
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class TestSave : MonoBehaviour
{
///
/// 定义一个测试类
///
public class TestClass
{
public string Name = "张三";
public float Age = 23.0f;
public int Sex = 1;
public List<int> Ints = new List<int>(){1,2,3};//定义List变量
}
void Start()
{
//定义存档路径
string dirpath = Application.persistentDataPath + "/Save";//Application.persistentDataPath="C:/Users/Administrator/AppData/LocalLow/lucas_meijer@gmail_com/unity"
//创建存档文件夹
IOHelper.CreateDirectory(dirpath);
//定义存档文件路径
string filename = dirpath + "/GameData.sav";//dirpath="C:/Users/Administrator/AppData/LocalLow/lucas_meijer@gmail_com/unity/Save"
TestClass t = new TestClass();
//保存数据
IOHelper.SetData(filename, t);
//读取数据
TestClass t1 = (TestClass)IOHelper.GetData(filename, typeof(TestClass));
Debug.Log(t1.Name);
Debug.Log(t1.Age);
Debug.Log(t1.Ints);
Debug.Log(filename);//加上这一句,就可以显示存档路径
}
}
结束-----------------------------------------------------TestSave.cs