两种方式读取Json文件 数据

这篇具有很好参考价值的文章主要介绍了两种方式读取Json文件 数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

首先下载LitJson.dll 文件,并将其拖入 Unity项目中的 的 Assets/Plugins目录中

其次在你的Unity项目中创建好Assets/StreamingAssets文件夹,用于存放文件

json文件怎么读取,Unity细小知识点,json,unity,游戏引擎,Powered by 金山文档

功能:将数据写入到文件中(可自由扩充),在程序运行时获取指定对象(这里 根据指定id 获取其对象数据)。

json文件中的数据参数 要与Skill中公开的字段 名称完全一致。

(注意Json 文件之准许有一个 顶级项【即一个数组 或一个对象】)

json技能信息.text

[
  {
    "id": 1,
    "name": "D",
    "damage": 20
  },
  {
    "id": 2,
    "name": "T",
    "damage": 200
  },
  {
    "id": 3,
    "name": "C",
    "damage": 2000
  }
]

对应的 Skill类数据

public class Skill 
{
    public int id;
    public string name;
    public int damage;

}

代码块:文章来源地址https://www.toymoban.com/news/detail-518154.html

private void OnGUI()
    {
        if (GUILayout.Button("读取方式一"))
        {
            string file = File.ReadAllText(Application.streamingAssetsPath +"/json技能信息.txt");
            //jsonData 代表一个数组或者一个对象【JsonData 就是json数据 根据json文件不同 其代表不用 ,可能为数组可能为对象】
            JsonData jsonData = JsonMapper.ToObject(file);
            Skill skill = new Skill();
            //使用 foreach 遍历 该数据
            foreach (JsonData temp in jsonData)//这里temp 代表一个对象
            {
                JsonData idValue = temp["id"];//通过字符串索引器 可以获得json文件中 键值对的值
                skill.id = int.Parse(idValue.ToString());

                skill.name = temp["name"].ToString();
                skill.damage = int.Parse(temp["damage"].ToString());
                //【将读取的数据对象】添加到字典集合中
                if (!skillDic.ContainsKey(skill.id))
                    skillDic.Add(skill.id, skill);
            }
            Debug.Log($"{skillDic[2].name},{skillDic[2].id},{skillDic[2].damage}");//C,3,2000
        }


        if (GUILayout.Button("读取方式二"))
        {
            string file = File.ReadAllText(Application.streamingAssetsPath + "/json技能信息.txt");
            //因为 json文件中 数据顶级项是数组 所以直接转换为 对象数组
            Skill[] skills = JsonMapper.ToObject<Skill[]>(file);
            
            //使用 foreach 遍历 该数据
            foreach (Skill temp in skills)//这里temp 代表一个对象
            {
                if (!skillDic.ContainsKey(temp.id))
                    skillDic.Add(temp.id, temp);//将数据添加到集合中
            }
            Debug.Log($"{skillDic[1].name},{skillDic[1].id},{skillDic[1].damage}");//D,1,20
        }

    }

到了这里,关于两种方式读取Json文件 数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java 读取json文件的2种方式

    研发过程中,经常会涉及到读取配置文件等重复步骤,也行是.conf文件,也许是.json文件,但不管如何他们最终都需要进入到jave的inputStream里面。下面以读取.json文件为例 需要1个参数: fileName: 文件名,一般为绝对路径,不然可能会找不到。或者和java文件同一个路径下 最终

    2024年02月11日
    浏览(40)
  • Unity中读取Json文件:基于Assets/Resources文件夹

    我好生气😤,Python,JS里面一两行代码能够搞定的Json读取,在Unity中使用C#读取Json文件超多坑,爬出来一个又来一个。 主要是JsonUtility.FromJson太不给力了。 最好的方式是,使用 https://github.com/jilleJr/Newtonsoft.Json-for-Unity 这个第三方库。详情见下。 Step 1: 先把对应的Json File放到

    2024年02月12日
    浏览(57)
  • 【Unity】C# 创建/读取/解析JSON数据

    判断是否存在JSON数据文件没有则创建并保存

    2024年02月16日
    浏览(71)
  • .NET Web API设置响应输出的Json数据格式的两种方式

    在ASP.NET Core Web API中设置响应输出Json数据格式有两种方式,可以通过添加 System.Text.Json 或 Newtonsoft.Json JSON序列化和反序列化库在应用程序中全局设置接口响应的Json数据格式,本文示例使用的是新的Minimal API模式。 System.Text.Json System.Text.Json是 .NET Core 3.0 及以上版本中内置的 J

    2024年01月18日
    浏览(44)
  • 【100个 Unity实用技能】☀️ | Unity读取本地文件(Json,txt等)的三种方法示例

    老规矩,先介绍一下 Unity 的科普小知识: Unity 是 实时3D互动内容创作和运营平台 。 包括 游戏开发 、 美术 、 建筑 、 汽车设计 、 影视 在内的所有创作者,借助 Unity 将创意变成现实。 Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和

    2023年04月08日
    浏览(66)
  • Unity文本框解析读取mqtt服务器JSON数据

    本次内容是讲述如何将mqtt服务器中接收到的数据在Unity3D的文本框控件中显示JSON键值对中的“值”。 需求: 1.GameObject——UI——Text (将Unity 3D的文本框控件置于场景) 命名空间引用: using UnityEngine.UI; 2. Newtonsoft插件 命名空间引用: Newtonsoft.Json.Linq; 3.MQTT通讯需求: (1)h

    2023年04月08日
    浏览(81)
  • qt学习:json数据文件读取写入

    目录 什么是json 基本格式 例子  解析json文件数据到界面上 组合json数据文档对象 json是一种轻量级的数据交互格式,简单来说,json就是一种在各个编程语言中流通的数据格式,负责不同编程语言中的数据传递和交互 以键值对的形式存放 键-----字符串 值------基本数据类型,字

    2024年01月24日
    浏览(45)
  • Python:使用openpyxl读取Excel文件转为json数据

    openpyxl - A Python library to read/write Excel 2010 xlsx/xlsm files 文档 https://openpyxl.readthedocs.io/en/stable/ https://pypi.org/project/openpyxl/ 安装 环境 读取文件示例:将Excel文件读取为json数据 有如下一个文件 data.xlsx 实现代码 输出读取的json数据 读写示例

    2024年02月15日
    浏览(73)
  • Java如何快速读取&解析JSON数据(文件),获取想要的内容?

    手打不易,如果转摘,请注明出处! 注明原文: https://zhangxiaofan.blog.csdn.net/article/details/132764186 目录 前言 准备工作 Json数据(示例) 解析Json文件 第一步:创建一个空类 第二步:使用 Gsonformat 插件  第三步:复制Json内容,创建对应类 第四步:读取Json文件,提取目标数据

    2024年02月05日
    浏览(77)
  • Unity——JSON的读取

    在实际中,读取JSON比保存JSON重要得多。因为存档、发送数据包往往可以采用其他序列化方法,但游戏的配置文件使用JSON格式比较常见。游戏的配置数据不属于动态数据,属于游戏资源,但很适合用JSON表示。 下面以一个简单的JSON数据文件为例,演示读取JSON。从整体上看有两

    2024年02月06日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包