让策划也能轻松修改数据的方法:运用Excel2Json2Object插件将xml表格转为Object导入脚本
让策划也能轻松修改数据的方法:运用Excel2Json2Object插件将xml表格转为Object导入脚本
运用Excel2Json2Object插件将xml表格转为Object导入脚本
下载地址
https://pan.baidu.com/s/1m86B7Gk6Jt46rRfyAmrHng 提取码: ikvc
插件不支持 float 类型,浮点数请使用 double 类型
1.导入插件
导入Excel2Object.unitypackage
2.创建存储数据的Excel表格
ID | Name | Hp | Desc |
---|---|---|---|
1 | a | 10 | da |
2 | b | 20 | db |
3 | c | 30 | dc |
4 | d | 40 | dd |
后缀名必须是“.xlsx”
表格第一行为变量名
其后每一行都是一组数据
把表格导入Unity
这里创建的表格文件名为 HeroDataxml.xml
3.Unity中确定数据类
public class HeroData
{
public int ID;
public string Name;
public int hp;
public string Des;
}//变量名必须和表格第一行一致
4.在Unity中把Excel表格转换为Jason文件
转换生成同名Jason文件
5.Jason文件转换为Object
例如我们创建一个控制对象Hero1的脚本HeroDatactl
将HeroDatactl挂载到游戏物体Hero1上
然后在HeroDatactl中声明一个变量
public TextAsset json;//声明一个存放.txt的变量
在unity中指定他为转换好的json文件(把我们转换出的 Json 文件,直接拖到这个变量中)
public class HeroData : MonoBehaviour
{
public TextAsset json;//声明一个存放.txt文件的变量
// Start is called before the first frame update
void Start()
{
//将一个jason文件转换为一个类型对象
//(一个HeroData类的对象,就是一条数据)
List<HeroData> datas
= JsonToObject.JsonToObject_ByJsonContent<HeroData>(json.text);
//返回值为表格中的数据
//输出测试
Debug.Log(datas[0].ID);
Debug.Log(datas[2].Name);
}
}
//将一个jason文件转换为一个类型对象
JsonToObject.JsonToObject_ByJsonContent<HeroData>(json.text);
//<>要把表格中的数据,转换的什么类型的对象
6.插件API
JsonToObject.JsonToObject_ByJsonFile()
用于把一个Json文件转换为(Object)
参数:Json 文本文件的地址(需要加上文件名的后缀名)
/// 把一个Json文本文件,转成一个对象(Object)
/// <typeparam name="T">对象的类型</typeparam>
/// <param name="filePath">Json文本文件的地址(需要加上文件名和后缀名)</param>
public static List<T> JsonToObject_ByJsonFile<T>(string filePath)
{
/*直接解析成对象*/
//读取Json文本中的内容
string json = File.ReadAllText(filePath);
//解析Json文本中的内容 -(解析成数组或者List列表都可以)
List<T> datas = JsonToObject_ByJsonContent<T>(json);
return datas;
}
返回值:泛型类型的列表
JsonToObject.JsonToObject_ByJsonContent()
用于把一个Json格式的文本转换为(Object)
参数:Json 文本文件中的内容
/// 把一个Json格式的文本,转成一个对象(Object)
/// <typeparam name="T">对象的类型</typeparam>
/// <param name="filePath">Json文本中的内容</param>
public static List<T> JsonToObject_ByJsonContent<T>(string conntent)
{
/*直接解析成对象*/
//解析Json文本中的内容 -(解析成数组或者List列表都可以)
T[] datas = JsonMapper.ToObject<T[]>(conntent);
//把数组封装成List列表
List<T> dataList = new List<T>();
for (int i = 0; i < datas.Length; i++)
{
dataList.Add(datas[i]);
}
return dataList;
}
返回值:泛型类型的列表
让策划也能轻松修改数据的方法:运用Excel2Json2Object插件将xml表格转为Object导入脚本的更多相关文章
- oracle 修改数据 保险方法
oracle 中修改比较安全的方法:(pl/sql) 第一种方法: select * from temp where id=9 for update; 第二种方法: select t.*,rowid ...
- MyBatis基础入门《十 一》修改数据
MyBatis基础入门<十 一>修改数据 实体类: 接口类: xml文件: 测试类: 测试结果: 数据库: 如有问题,欢迎纠正!!! 如有转载,请标明源处:https://www.cnbl ...
- android基础(五)网络数据解析方法
在网络上传输数据时最常用的方法有两种:XML和JSON,下面就对这两种类型的数据解析进行讲解. 一.XML数据解析 在Android中,常见的XML解析器分别为SAX解析器.DOM解析器和PULL解析 ...
- c#教程之通过数据绑定修改数据
通过数据绑定修改数据 "实体框架"提供了与数据库的双向通信通道.前面已经讲述了如何使用"实体框架"获 取数据,现在来看看如何修改获取的信息,并将改动发送回数据库 ...
- php处理登录、添加数据、删除数据和修改数据
php 处理登录 :需要先建一个登录的页面,用form表单就可以很轻松的完成,(这里的示例是我根据数据库现成的表做的 是一个teacher表格 根据老师的工号和姓名登录的) <form acti ...
- Redis修改数据多线程并发—Redis并发锁
本文版权归博客园和作者本人吴双共同所有 .转载爬虫请注明地址,博客园蜗牛 http://www.cnblogs.com/tdws/p/5712835.html 蜗牛Redis系列文章目录http:// ...
- MySQL数据库5 - 插入数据,修改数据,删除数据
一.插入数据 1. 所有列都插入值 INSERT [INTO] TABLE_NAME VALUES(V1,V2....Vn); 特点:列值同数,列值同序 eg: insert into users v ...
- 实现DevExpress GridControl 只有鼠标双击后才进行修改数据
1. 实现DevExpress GridControl 只有鼠标双击后才进行修改数据:修改GridView.OptionsBehavior.EditorShowMode属性为Click 2. 实现De ...
- IntelliJ IDEA 在网页修改数据,但是在浏览器刷新的时候,不能读取到修改之后的数据
使用IntelliJ IDEA 在网页修改数据,但是在浏览器刷新的时候,不能读取到修改之后的数据? 解决办法:tomcat配置中,On frame deactivation属性选择Update cla ...
随机推荐
- day 22 二十二、面向对象导入、名称空间、类与对象
一.面向对象导入 1.含义: ①面向过程: 重过程:解决问题,考虑的是解决问题的流程 解决问题的思路清晰,但拓展性不强 ②面向对象: 重对象:解决问题,找到解决问题的对象 解决问题的思路可能不止一条( ...
- Spring Boot2.1.3全局跨域
/** * 配置跨域访问 * * @author Terwer */ @Bean public WebMvcConfigurer corsConfigurer() { return new WebMv ...
- [dev] 刷HHKP的一般流程及常见错误(多图慎点)
( 为什么打了个dev的tag?development不用键盘,难道用鼠标??) 嗯呐,我有个HHKP,你看: 好不好看? 脏不脏? 接下来讲一下,我是怎么刷它,要看完哝,不然拆坏了不要怪我. 本来我 ...
- Flask(python)异步(ajax)返回json格式数据
主要讨论两个问题,第一个是关于json.dumps 与jsonify区别,第二个是几种异步的区别(见jQuery中的$.getJSON.$.ajax.$.get.$.post的区别). json.du ...
- docker国内镜像源
https://www.daocloud.io/mirror curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http ...
- 1840: Jack Straws
1840: Jack Straws 时间限制(普通/Java):1000MS/10000MS 内存限制:65536KByte 总提交: 168 测试通过:129 描述 I ...
- tcprstat测试服务器请求响应时间
tcprstat使用,tcprstat必须使用root权限才能使用 tcprstat -p 3306 -t 1 -n 5 -l 192.168.52.250 centos统计分析所有的IP地址
- ASA failover
Active-Standby 1.作用:提供设备冗余 2.物理概念:primary 和 secondary ,需要命令敲得,角色不会切换, 3.虚拟概念:active和standby ,需要选举,角色 ...
- 【托业】【全真题库】TEST2-语法题
105 to do sth 不定时可充当形容词修饰名词 In an effort to reduce prices----为降低价格 106. 修饰比较级:far,much,even,still,a ...
- 学号 20175201张驰 《Java程序设计》第4周学习总结
学号 20175201张驰 <Java程序设计>第4周学习总结 教材学习内容总结 第5章 继承:避免多个类间重复定义共同行为,用我们已经有的类,去创建新的类 任何子类都可以继承它的父类的成 ...