Kafka hash Logstash Jetson Nano websocket eloquent grid nginx视频教程 进销存源码 jquery去掉空格 jquery使用ajax python编程练习题 a标签去除下划线 内存计算 python如何注释 python调用方法 python怎么下载安装 配置python环境 python匹配字符串 java类和对象 java语言介绍 java八种基本数据类型 java安装与配置 p2pover 街头篮球辅助 内存修改器 微信摇骰子表情包 笔记本外接显示器好吗 js延迟加载的方式 数科阅读器 tar解压 ip地址转换器 gunzip 微信临时链接多久失效 幽灵行动多少钱 js动态添加元素 极限防守图 0x000007a 黑客入门新手特训 黑客攻防技术宝典
当前位置: 首页 > 学习教程  > 编程语言

unity xlsx转json 使用litjson解析

2020/12/5 11:01:10 文章标签:

unity xlsx转json 使用litjson解析 本文仅做实现 暂无讲解 如有错误 还望指出 配置Json文件 编辑.xlsx文件 .xlsx文件另存为.csv格式 以记事本的打开方式打开.csv文件 将其转为json格式 第一行删除 分隔符使用英文逗号 “,” 点击转换得到json文件 将json文件修改为 …

unity xlsx转json 使用litjson解析

本文仅做实现 暂无讲解 如有错误 还望指出

配置Json文件

编辑.xlsx文件
.xlsx文件

.xlsx文件另存为.csv格式
.csv文件
以记事本的打开方式打开.csv文件
记事本打开

将其转为json格式
转json
第一行删除 分隔符使用英文逗号 “,” 点击转换得到json文件
得到的json文件
将json文件修改为

修改后的json文件
复制进行校验
提示错误
错误提示
删除最后一个逗号 再次校验
校验成功
校验正确

LitJson解析

新建Unity项目
新建项目
项目目录
目录
打开项目工程文件夹
Resources
进入Resources文件 新建ItemInfoJson.txt文本
将校验成功的json复制到文本中
文本另存为修改编码格式为UTF-8(不然中文乱码)
ItemInfoJson.txt文本修改后缀为ItemInfoJson.json
Plugins
进入Plugins文件夹 将litjosn.dll拖入
Scripts
新建C#脚本 JsonTest

修改后项目目录
修改后目录

编辑JsonTest脚本
新建ItemInfo类 根据配置表的字段来定义字段
ItemInfo类
新建ItemInfoList类
ItemInfoList类
编辑JsonTest类
定义itemInfoDict字典存储物品 通过id获取对应物品信息
创建ParseItemInfoJson方法解析ItemInfoJson
JsonTest类

完整代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using LitJson;
using System;

public class JsonTest : MonoBehaviour
{
    private Dictionary<int, ItemInfo> itemInfoDict;
    private void Awake()
    {
        ParseItemInfoJson();
    }

    private void ParseItemInfoJson()
    {
        itemInfoDict = new Dictionary<int, ItemInfo>();
        TextAsset textItemInfo = Resources.Load<TextAsset>("ItemInfoJson");
        ItemInfoList itemInfoList = JsonMapper.ToObject<ItemInfoList>(textItemInfo.text);

        foreach (ItemInfo info in itemInfoList.itemInfoList)
        {
            itemInfoDict.Add(info.id, info);
            Debug.Log("info Id:" + info.id + " name:" + info.name + " number:" + info.number + " money:" + info.money + " path:" + info.path + " introduction:" + info.introduction);
        }
    }
}

[Serializable]
public class ItemInfo
{
    public int id;
    public string name;
    public int number;
    public int money;
    public string path;
    public string introduction;

}
[Serializable]
public class ItemInfoList
{
    public List<ItemInfo> itemInfoList;
}

测试代码:
场景中创建一个空物体GameObject 挂载JsonText脚本
在这里插入图片描述
启动项目
信息打印正确
在这里插入图片描述

注意点:

json文件最后一组数据不需要以","结尾
ItemInfo类所拥有的字段需与json文件的键对应(大小写需一致)
ItemInfoList类中定义的ItemInfo列表变量名需与json文件中数组名对应(好像是数组名…- -)
在这里插入图片描述


本文链接: http://www.dtmao.cc/news_show_450376.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?