Unity3d-XML文件数据解析&JSON数据解析
1.XML文件数据解析:(首先须要导入XMLParser解析器,The latest released download from:http://dev.grumpyferret.com/unity/)
XML文件内容:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ROOT>
<table wave="1" enemyname="ground" level="1" wait="3"/>
...
</ROOT>
//XML数据模型类
public class SpawnData
{
public int wave = 1;
public string enemyname = "";
public int level = 1;
public float wait = 1.0f;
}
//读取XML文件
//存储XML文件
public TextAsset xmldata;
//保存读出数据
ArrayList m_enemylist;
void ReadXML()
{
m_enemylist = new ArrayList();
XMLParser xmlparse = new XMLParser();
XMLNode node = xmlparse.Parse(xmldata.text);
XMLNodeList list = node.GetNodeList("ROOT>0>table");
for (int i = 0; i < list.Count; i++)
{
string wave = node.GetValue("ROOT>0>table>" + i + ">@wave");
string enemyname = node.GetValue("ROOT>0>table>" + i + ">@enemyname");
string level = node.GetValue("ROOT>0>table>" + i + ">@level");
string wait = node.GetValue("ROOT>0>table>" + i + ">@wait"); SpawnData data = new SpawnData();
data.wave = int.Parse(wave);
data.enemyname = enemyname;
data.level = int.Parse(level);
data.wait = float.Parse(wait); m_enemylist.Add(data);
}
}
2.JSON数据解析(首先须要导入工具LitJSON,下载地址:http://lbv.github.io/litjson//)
1>放到Unityproject中删除目录benchmarks和test。在须要数据解析的代码文件里增加:using LitJson;
2>代码解析:
JSON文件数据例如以下:
{"name":"中国",
"provinces":[
{"name":"黑龙江","id":1,"citys":["佳木斯","大庆"]},
{"name":"辽宁","id":2,"citys":["沈阳","大连","齐齐哈尔"]},
{"name":"吉林","id":3,"citys":["吉林市","长春市","四平市","哈尔滨"]}
]}
建类:
public class Country
{
public string name {get; set;}
public Province [] provinces;
} public class Province
{
public string name;
public int id;
public string[] cities;
} public TextAsset jsondata;//拖入JSON.txt文件
void ReadJSON()
{
JsonData jd = JsonMapper.ToObject(jsondata.text);
print("p.name" + (string)jd["name"]);
JsonData provinces = jd["provinces"]; for(int i = 0; i < provinces.Count; i++)
{
print("j.name" + provinces[i]["name"]);
print("j.cities" + provinces[i]["citys"].Count);
for(int j = 0; j < provinces[i]["citys"].Count; j++)
{
print("provinces[i][citys][" + j + "]" + provinces[i]["citys"][j]);
}
}
}
执行结果例如以下图:
Unity3d-XML文件数据解析&JSON数据解析的更多相关文章
- C#程序中:如何修改xml文件中的节点(数据)
要想在web等程序中实现动态的数据内容给新(如网页中的Flash),不会更新xml文件中的节点(数据)是远远不够的,今天在这里说一个简单的xml文件的更新,方法比较基础,很适合初学者看的,保证一看就懂 ...
- Jquery Ajax和getJSON获取后台普通Json数据和层级Json数据解析
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Gson解析复杂Json数据
背景 json是一种数据格式,便于数据传输.存储.交换. gson是 ...
- 解析天气预报JSON数据
解析天气预报JSON数据 JSON字符串 constjson2 = '{' + #13#10 +'"error":0,' + #13#10 +'"status" ...
- mormot解析天气预报JSON数据
mormot解析天气预报JSON数据 uses SynCommons; constjson2 = '{' + #13#10 +'"error":0,' + #13#10 +'&qu ...
- 我的Android进阶之旅------>解决Jackson、Gson解析Json数据时,Json数据中的Key为Java关键字时解析为null的问题
1.问题描述 首先,需要解析的Json数据类似于下面的格式,但是包含了Java关键字abstract: { ret: 0, msg: "normal return.", news: ...
- Android -- 创建XML文件对象及其序列化, pull解析XML文件
1. 创建XML文件对象及其序列化 示例代码:(模拟以xml格式备份短信到SD卡) SmsInfo.java, bean对象 /** * 短信的业务bean * @author Administrat ...
- 用ajax获取后台数据,返回json数据,怎么在前台使用?
用ajax获取后台数据,返回json数据,怎么在前台使用呢?后台 C# code ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 if (dataType == &qu ...
- XML 数据请求与JSON 数据请求
(1)XML 数据请求 使用 AFNetworking 中的 AFHTTPRequestOperation 和 AFXMLParserResponseSerializer,另外结合第三方框架 XMLD ...
随机推荐
- python基础之程序交互与数据类型
一.程序交互 1.什么是程序交互? name=input('输入用户名:') #无论用户输入何种内容,input都会存成字符串格式 print(name) 2.为啥要有程序交互? 让计算机能够模拟人, ...
- Laravel5.5 生成测试数据
1.在database/factories/UserFactory.php 中添加 2.在tinker中生成数据 3.数据生成成功
- [BZOJ4556][Tjoi2016&Heoi2016]字符串 主席树+二分+倍增+后缀自动机
4556: [Tjoi2016&Heoi2016]字符串 Time Limit: 20 Sec Memory Limit: 128 MBSubmit: 1215 Solved: 484[S ...
- Ionic2 window开发环境搭建
1.软件安装 Node.jsCordova & Ionic CLIJava SDK (一定要安装jre1.8)Android SDK 可根据链接http://www.jianshu.com/p ...
- 【互动问答分享】第5期决胜云计算大数据时代Spark亚太研究院公益大讲堂
Spark亚太研究院100期公益大讲堂 [第5期互动问答分享] Q1:spark怎样支持即席,应该不是spark sql吧,是hive on spark么? Spark1.0 以前支持即席查询的技术是 ...
- [linux]多线程下载
axel -n 10 -o /tmp/ http://soft.vpser.net/lnmp/lnmp0.7-full.tar.gz # 10是线程数
- 二维偏序+树状数组【P3431】[POI2005]AUT-The Bus
Description Byte City 的街道形成了一个标准的棋盘网络 – 他们要么是北南走向要么就是西东走向. 北南走向的路口从 1 到 n编号, 西东走向的路从1 到 m编号. 每个路口用两个 ...
- 18、Django实战第18天:课程机构收藏功能
这里点击"收藏"也是ajax异步操作,我在operation.model.py中创建了一个用户收藏表,其中fav_id字段,如果我们收藏的是课程,那就是课程id,如果收藏的是课程机 ...
- 安全管道工具SSF
安全管道工具SSF SSF(Secure Socket Funneling)是一款安全网络通信工具.它可以将多个管道的数据通过一个TLS连接转发给远程计算机,从而实现数据的安全传输.它不仅支持TC ...
- POJ 2082 Terrible Sets(单调栈)
[题目链接] http://poj.org/problem?id=2082 [题目大意] 给出一些长方形下段对其后横向排列得到的图形,现在给你他们的高度, 求里面包含的最大长方形的面积 [题解] 我们 ...