Unity中实现解析Json文件
发布日期:2021-06-30 19:59:12
浏览次数:3
分类:技术文章
本文共 1707 字,大约阅读时间需要 5 分钟。
一:前言
在我们的项目开发过程中,策划们可能会配置很多的数据在Json文件中,例如商城物品,随机名称等,往往这些数据会放在不同的Json文件中
二:什么是Json
Json是一种轻量级存储和交换文本信息的语法,类似XML,但是Json比XML更小、更快,更易解析
三:Json语法规则
数据在键值对中
数据之间用逗号分隔 花括号保存对象,对象与对象之间用逗号分隔 方括号保存数组[{ "ID": 1001, "Name": "技能1", "damage": 10 }, { "ID": 1002, "Name": "技能2", "damage": 20 }]
四:Json校验以及转换
Json校验:
Json格式转C#实体类:
五:Json解析成对象
——导入Json库文件:
——导入Json文件
[ { "ID": "1001", "Name": "技能1", "Damage": 10 }, { "ID": "1002", "Name": "技能2", "Damage": 20 }]
——编写代码将解析Json
//1.解析成JsonData对象后再解析成单独数据void ParseJson(){ TextAsset ta = Resources.Load("Test"); JsonData data = JsonMapper.ToObject(ta.text); foreach (JsonData temp in data) { string id = temp[0].ToString(); string name = temp[1].ToString(); int damage = int.Parse(temp[2].ToJson()); Debug.Log(id + "-" + name + "-" + damage + "\n"); }}//2.直接解析成实体类(实体类的字段名称必须和Json的键一一对应)public class Test : MonoBehaviour{ private void Awake() { ParseJson(); } void ParseJson() { TextAsset ta = Resources.Load ("Test"); Item[] itemList = JsonMapper.ToObject - (ta.text); foreach (var temp in itemList) { Debug.Log(temp.ID + "-" + temp.Name + "-" + temp.Damage); } }}public class Item{ public string ID; public string Name; public int Damage;}
六:对象解析成Json
——导入Json库文件:
——编写实体类
public class Item{ public string ID; public string Name; public int Damage;}
——编写代码将实体类转换为Json
void ParseJson(){ Item item = new Item(); item.ID = "1001"; item.Name = "技能1001"; item.Damage = 99; string json = JsonMapper.ToJson(item); Debug.Log(json);}
转载地址:https://liuhaowen.blog.csdn.net/article/details/89395548 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月12日 23时47分45秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
tensorflow 数据格式
2019-04-30
tf rnn layer
2019-04-30
tf input layer
2019-04-30
tf model create
2019-04-30
tf dense layer两种创建方式的对比和numpy实现
2019-04-30
tf initializer
2019-04-30
tf 从RNN到BERT
2019-04-30
tf keras SimpleRNN源码解析
2019-04-30
tf keras Dense源码解析
2019-04-30
tf rnn输入输出的维度和权重的维度
2019-04-30
检验是否服从同一分布
2019-04-30
tf callbacks
2019-04-30
keras、tf、numpy实现logloss对比
2019-04-30
Ubuntu20.04安装微信
2019-04-30
Restful风格的使用
2019-04-30
Swagger基础入门整合SpringBoot
2019-04-30
MyBatisPlus简单入门(SpringBoot)
2019-04-30
攻防世界web进阶区NewsCenter详解
2019-04-30
攻防世界web进阶PHP2详解
2019-04-30
如何解决词达人问题(新)
2019-04-30