1、服务器返回的数据格式
目前最常见的就是Json与XML格式
1-2、什么是Json?
它是一种轻量级的数据格式,一般用于数据交互
服务器返回给客户端的数据,一般都是JSON格式(文件下载除外http://www.jianshu.com/p/ef122b64d34f)
JSON的格式很像C#中字典和数组,类对象
标准的Json:key必须用双引号。
{“name” :"Jack","age":"10"} {"names":["Jack","rose","jock"] }
1-3、什么XML?
全称是Extensible Markup Language,译作“可扩展标记语言”
跟JSON一样,也是常用的一种用于交互的数据格式
一般也叫XML文档(XML Document)
一个常见的XML文档一般由以下部分组成**
1-文档声明
在XML文档的最前面,必须编写一个文档声明,用来声明XML文档的类型最简单的声明用encoding属性说明文档的字符编码
2-元素(Element)
一个元素包括了开始标签和结束标签拥有内容的元素:小黄人没有内容的元素:没有内容的元素简写:一个元素可以嵌套若干个子元素(不能出现交叉嵌套)全家福 第01张80注意:XML中的所有空格和换行,都会当做具体内容处理下面两个元素的内容是不一样的第1个小黄人第2个小黄人
3-属性(Attribute)
一个元素可以拥有多个属性video元素拥有name和length两个属性属性值必须用 双引号"" 或者 单引号'' 括住实际上,属性表示的信息也可以用子元素来表示,比如全家福 第一张30
2、Json解析
步骤描述:导入LitJson.dll;
1.首先下载LitJson源码
下载地址:http://lbv.github.io/litjson/
2.LitJson在Unity3D中的配置
在Unity3d的assets中的plugins目录下新建一个文件夹litjson,然后把litjson的源代码中所有.cs文件放到这里。Unity3D文档描述中plugins目录中的脚本会先运行,这样保证在我们写其他脚本的时候,litjson已经加载并运行好了。
3.在脚本中引用litjson命名空间,using LitJson ;using System.IO;
void Start ()
{
string path =""Assets/Resources/jsonxx.json";
string textOne = File.ReadAllText(path);
JsonDatadata1 =JsonMapper.ToObject(textOne);
for (int i =0; i < data1.Count; i++)
{
JsonDatanameValue = data1[i]["Name"];
Debug.Log(nameValue);
NameText.text= nameValue.ToString();
JsonDataIDValue = data1[i]["id"];
IDText.text= IDValue.ToString();
JsonDataAgeValue = data1[i]["age"];
AgeText.text= AgeValue.ToString();
Debug.Log("名字是:"+ NameText +"ID:"+ IDText);
}
}
===========
jsonxx.json文件
[
{"id" : 10,"Name" : "Leichaoxx","age":28},
{"id" : 20,"Name" : "LinfenPiPi","age":20},
{"id" : 30,"Name" : "SunYin","age":27}
]
3.xml解析
引入命名空间:using System.Xml;using System.IO;
xml文档 xmltext.xml
unity ,C#脚本
void Start()
{
string path="Assets/Resources/xmltext.xml";
XmlDocument XmlDoc=new XmlDocument();
//XmlDoc.Load(path);
XmlDoc.LoadXml(File.ReadAllText(path));
XmlNode rootNode=XmlDoc.FirstChild;
XmlNodeList nodeList=rootNode.ChildNodes;
foreach(XmlElement xe in nodeList)
{
foreach(XmlElement xxe in xe.ChildNodes)
{
if(xxe.Name=="Name")
{
Debug.Log(xxe.InnerText);
}
}
}
}