using UnityEngine;
using System.IO;
/// <summary>
/// <remarks>
/// 文件的存储与读取
/// </remarks>
///
/// </summary>
public class SLSystem
{
/// <summary>
/// <remarks>
/// 保存数据
/// </remarks>
/// </summary>
/// <param name="saveFileName">要保存的文件名</param>
/// <param name="data">需要保存的数据</param>
public static void SaveTheData(string saveFileName, object data)
{
var json = JsonUtility.ToJson(data);
var path = Path.Combine(Application.persistentDataPath, saveFileName);
try
{
File.WriteAllText(path, json);
Debug.Log($"Succeful saved data to {path}.");
}
catch (System.Exception exception)
{
Debug.Log(exception);
}
}
/// <summary>
/// 读取数据
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="saveFileName">读取数据的名称</param>
/// <returns></returns>
public static T LoadFromData<T>(string saveFileName)
{
string path = Path.Combine(Application.persistentDataPath, saveFileName);
try
{
string json = File.ReadAllText(path);
var data = JsonUtility.FromJson<T>(json);
return data;
}
catch (System.Exception exception)
{
Debug.Log(exception);
return default;
}
}
public static void DeleteSaveFromFile(string saveFileName)
{
string path = Path.Combine(Application.persistentDataPath, saveFileName);
try
{
File.Delete(path);
}
catch (System.Exception exception)
{
Debug.Log(exception);
}
}
}