Unity 保存Json数据到本地文件
2016-08-18 10:28
369 查看
一、先导入Json 解析库;
下载地址:http://download.csdn.net/detail/u014076894/9606309二、开始代码的编写;
//命名空间using System.IO;
using System.Collections.Generic;
using LitJson;
//相关变量声明: private static string mFolderName; private static string mFileName; private static Dictionary<string, string> Dic_Value = new Dictionary<string, string>(); private static string FileName { get { return Path.Combine(FolderName, mFileName); } } private static string FolderName { get { return Path.Combine(Application.persistentDataPath, mFolderName); } }
//初始化方法 如有需要,可重载初始化方法 public static void Init(string pFolderName, string pFileName) { mFolderName = pFolderName; mFileName = pFileName; Dic_Value.Clear(); Read(); }
//读取文件及json数据加载到Dictionary中 private static void Read() { if(!Directory.Exists(FolderName)) { Directory.CreateDirectory(FolderName); } if(File.Exists(FileName)) { FileStream fs = new FileStream(FileName, FileMode.Open); StreamReader sr = new StreamReader(fs); JsonData values = JsonMapper.ToObject(sr.ReadToEnd()); foreach(var key in values.Keys) { Dic_Value.Add(key, values[key].ToString()); } if(fs != null) { fs.Close(); } if(sr != null) { sr.Close(); } } }
//将Dictionary数据转成json保存到本地文件 private static void Save() { string values = JsonMapper.ToJson(Dic_Value); Debug.Log(values); if(!Directory.Exists(FolderName)) { Directory.CreateDirectory(FolderName); } FileStream file = new FileStream(FileName, FileMode.Create); byte[] bts = System.Text.Encoding.UTF8.GetBytes(values); file.Write(bts,0,bts.Length); if(file != null) { file.Close(); } }
到此,简单的保存方法基本完成了。
三、举例使用;
拿读写字符串为例://判断当前是否存在该key值
public static bool HasKey(string pKey) {
return Dic_Value.ContainsKey(pKey);
}
//读取string值 public static string GetString(string pKey) { if(HasKey(pKey)) { return Dic_Value[pKey]; } else { return string.Empty; } }
//保存string值 public static void SetString(string pKey, string pValue) { if(HasKey(pKey)) { Dic_Value[pKey] = pValue; } else { Dic_Value.Add(pKey, pValue); } Save(); }
如有雷同,纯属巧合!
如有不足,欢迎指正!
相关文章推荐
- Unity 保存Json数据到本地文件(字典)
- Unity 保存Json数据到本地文件
- Unity 中存储数据到JSON本地文件
- Unity IniFile 保存游戏数据到本地文件
- Unity 使用JSON实现本地数据保存和读取
- Unity 中保存数据到本地文件
- flex_将数据保存到本地文件;
- pyhton 从web获取json数据 保存到本地然后再读取
- Java模块 -- Http发送post数据文件,服务端Servlet接收,保存至本地
- 【Unity3D插件】在Unity中读写文件数据:LitJSON快速教程
- 【Unity3D插件】在Unity中读写文件数据:LitJSON快速教程 - 王选易
- @ResponseBody 返回json数据 在IE浏览器提示保存文件,但是在firefox中却可以正常的实现功能。
- 用C#编程从数据库中读取图片数据导进Excel文件的方法(如何从数据库中读取保存的文件,直接打开,中间不保存到本地)
- 怎么直接让火狐输入json数据,而不是弹出文件保存对话框?
- ListView 关于Adapter 本地文件中解析json数据完整例子
- BaseAdapter,这篇博客讲深入一些,实现从本地的JSON文件读取数据
- 每次请求回的Json数据本地用sharedpreference保存
- 解决IE下返回json数据提示文件保存到问题
- 关于使用java从http接口取数据保存到本地文件的中文乱码处理
- Unity本地数据存储---Sqlite和JSON