Unity 编辑时 Excel表格导入方法

本文仅解决编辑时导入的问题,不解决运行时导入的问题。本文只讲方法,不包含源代码。另外,所有数据应该只在编辑时导入,因为使用unity原生的数据格式载入效率高,在运行时载入excel数据应该避免。目前Unity资源商店里面没有特别好的excel插件。所以建议每个公司都做一个内部的“插件”,专门用于解决这个问题。excel表格的作用在于,当一个数据有很多行的时候,例如,角色的等级数据有99...
摘要由CSDN通过智能技术生成

本文仅解决编辑时导入的问题,不解决运行时导入的问题。本文只讲方法,不包含源代码。

另外,所有数据应该只在编辑时导入,因为使用unity原生的数据格式载入效率高,在运行时载入excel数据应该避免。

目前Unity资源商店里面没有特别好的excel插件。所以建议每个公司都做一个内部的“插件”,专门用于解决这个问题。

excel表格的作用在于,当一个数据有很多行的时候,例如,角色的等级数据有99个等级的话,不方便手动填入到MonoBehaviour/ScriptableObject的数据里面。这时候有一个导入excel数据表的功能就会非常重要。

读取excel表格注意:

  1. 请勿使用插件FlexReader,因为FlexReader的代码充满了BUG。修复这些问题所需要的时间加起来,还不如自己写节省时间。
  2. 使用库ExcelDataReader读取数据,是非常方便的。

导入流程非常的简单:

  1. 将Excel的表格转换为Json字符串
  2. 使用JsonUtility转换为自定义数据类型

如下表内容:

 

等级 经验 攻击力 防御力
  _exp _attack _defense
1 200 1 2
2 300 2 3
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Unity中使用WebGL获取Excel表格内容是一项相对复杂的任务。由于WebGL只支持JavaScript的API,我们需要使用JavaScript来实现这个功能。 首先,确保你有一个Excel表格文件(.xlsx或.xls格式)。然后,将该文件添加到Unity项目中。 其次,在Unity中创建一个新的JavaScript脚本,并将其附加到一个包含WebGL渲染的游戏对象上。 在脚本中,我们将使用JavaScript的FileReader API来读取Excel表格文件。具体步骤如下: 1. 在脚本中创建一个input元素,并设置其类型为file。这将创建一个文件上传控件。 ```javascript var input = document.createElement("input"); input.type = "file"; ``` 2. 监听文件上传控件的change事件,并在事件触发获取选中的文件对象。 ```javascript input.addEventListener("change", function(event) { var file = event.target.files[0]; }); ``` 3. 使用FileReader加载文件,并在加载完成后获取文件内容。需要注意的是,因为WebGL不能直接访问本地文件系统,所以需要将文件转换为ArrayBuffer格式。 ```javascript input.addEventListener("change", function(event) { var file = event.target.files[0]; var reader = new FileReader(); reader.onload = function(event) { var contents = event.target.result; // 将contents转换为ArrayBuffer格式 var arrayBuffer = new Uint8Array(contents); }; reader.readAsArrayBuffer(file); }); ``` 4. 如需使用第三方库来解析Excel表格,可以在Unity项目中引入该库。比如,可以使用xlsx.js来解析Excel文件。 ```javascript // 使用xlsx.js解析Excel文件 var workbook = XLSX.read(arrayBuffer, {type:"array"}); var worksheet = workbook.Sheets[workbook.SheetNames[0]]; var jsonData = XLSX.utils.sheet_to_json(worksheet,{raw:true}); ``` 以上就是通过Unity WebGL获取Excel表格内容的基本步骤。请注意,这只是一个大致的指导,具体实现可能需要根据你的项目需求做一些调整和修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值