JSON

《Unity系列》Json文件格式的解析 初级教程

字号+ 作者:H5之家 来源:H5之家 2017-04-30 18:04 我要评论( )

这篇文章为您讲述《Unity系列》Json文件格式的解析 初级教程的相关介绍,具体实例请看下文Json作为轻量级的数据交换格式,被广泛应用于网络数据传输中。相关的解

这篇文章为您讲述《Unity系列》Json文件格式的解析 初级教程的相关介绍,具体实例请看下文

Json作为轻量级的数据交换格式,被广泛应用于网络数据传输中。相关的解析工具层出不穷,一般掌握一个工具的应用其他的相应工具就能立马学会。

这里以C#中的LitJson为例给大家示范一下解析工具的用法。当然在示范之前有必要说明一下Json的数据格式是怎么回事,才好理解相应的代码。

Json格式必须遵循以下原则,不得违反——

一、必须以一个对象或者数组作为根节点;

例如:

 以一个对象作为根节点 {"xx":"xx","xx":"xx","xx":{..},"xx":[]....}

 以一个数组作为根节点 [{},{},...]

二、使用{}表示对象,[]表示数组,中间的属性使用键值对的方式;

三、键值对的键必须使用双引号“”包围住;

四、键值对中的值可以是对象,数组,数字,字符串,true/false,null(空值);

遵循以上要点,下面开始Jason的解析工作:

第一步:在vs中首先添加LitJson引用(如下图),使用的时候导入命名空间:using LitJson;

《Unity系列》Json文件格式的解析 初级教程

第二步:获取要解析的文件,并书写解析类

例如格式

[

{"id":1,"name":"第一式","damage":50},

{"id":2,"name":"第二式","damage":80},

{"id":3,"name":"第三式","damage":100}

]

解析类如下写法:

public class Skill
{
public int id { set; get; }
public string name { set; get; }
public int damage { set; get; }

public override string ToString()
{
return string.Format("id:{0};name:{1};damage:{2}", id, name, damage);
}
}

注意事项:解析的属性必须与json中的属性完全一致,否则无法获取数据;此处为了获得输出结果重写tostring方法。

第三步:使用LitJson进行解析

//将解析的文本读入一个字符串,如果是unity也是一样
string str = File.ReadAllText("Skill.Json");
//要解析的是一个Skill类型的对象数组,使用泛型解析
Skill[] skillList = JsonMapper.ToObject<Skill[]>(str);
//通过foreach遍历数组中的Skill元素并打印输出
foreach (Skill item in skillList)
{
Console.WriteLine(item);
}

谢谢您的访问.

这些内容可能对你也有帮助

更多asp.net教程可查看asp.net教程列表页。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • PWA(Progressive Web App)入门系列:(一)PWA简介

    PWA(Progressive Web App)入门系列:(一)PWA简介

    2017-03-23 09:01

  • apache kafka系列之迁徙与扩容工具用法

    apache kafka系列之迁徙与扩容工具用法

    2017-02-22 15:00

  • ABP入门系列(8)

    ABP入门系列(8)

    2017-02-03 12:01

  • json教程系列(5)-json错误解析net.sf.ezmorph.bean.MorphDynaBean cannot

    json教程系列(5)-json错误解析net.sf.ezmorph.bean.MorphDynaBean

    2017-01-31 16:02

网友点评
r