利用Json在Windows和安卓手机上做数据读写
如何在安卓和Windows上,利用JSON进行数据进行储存和读取并解析,这里我们将用到LitJson库进行解析 下载链接我将放在文章末尾,有更好的见解的同学可以在评论区留言,可以一起交流共同成长,废话不多少代码如下:
#if UNITY_ANDROID
string path = Application.persistentDataPath+ConstantMgr.PlayerData_path;//ConstantMgr.PlayerData_path 自己的Json文件名 不需要手动创建 我们只需要准备好初始JSON数据就可以了
//PlayerDataItem 是自己设计的数据类
#else
string path = Application.persistentDataPath + ConstantMgr.PlayerData_path;
#endif
public PlayerDataItem playerData=new PlayerDataItem();
#region GetJsonReader 读取Json 第一次运行也可以调这个
public void GetPlayerData()
{
if (!File.Exists(path))//文件不存在
{
Debug.Log("文件不存在");
File.Create(path).Dispose();//创建JSON文件
TextAsset asset = Resources.Load<TextAsset>(ConstantMgr.PlayerDataRes_path);
string str = asset.text;
File.WriteAllText(path, str);
}
string json = File.ReadAllText(path);
playerData = JsonMapper.ToObject<PlayerDataItem>(json);
}
#endregion
#region SavePlayerData 保存玩家数据
public void SavePlayerData(PlayerDataItem data)
{
if (!File.Exists(path))//文件不存在
{
Debug.Log("文件不存在");
File.Create(path).Dispose();
TextAsset asset = Resources.Load<TextAsset>(ConstantMgr.PlayerDataRes_path);
string str = asset.text;
File.WriteAllText(path, str);
}
JsonData jsonData = new JsonData();
jsonData = JsonMapper.ToJson(data);
Debug.Log(jsonData);
File.WriteAllText(path, jsonData.ToString());
}
#endregion