json解析本地数据,使用JSONObject和JsonUtility两种方法。

json解析丨网址、数据、其他信息

文章目录

  • json解析丨网址、数据、其他信息
  • 介绍
  • 一、文中使用了两种方法作为配置
  • 二、第一种
    • 准备
    • 2.代码块
  • 二、第二种
  • 总结


介绍

本文可直接解析本地json信息的功能示例,使用JSONObject和JsonUtility两种方法。


一、文中使用了两种方法作为配置

一种使用UnityWebRequest的方法(搭配JSON插件为JSONObject)
一种使用File文件读取方法(搭配Unity自带的JsonUtility)

二、第一种

UnityWebRequest方法

准备

JSONObject需要插件支持,不过可以在Assets Store中找到,直接搜索JSONObject就可以。
在这里插入图片描述
因为我开的Unity有点多,所以我选择添加到我的资源然后找到相应的Unity里在Package Manager里选择添加。只打开一个Unity可以直接选择加入到Unity里
在这里插入图片描述

需要在Unity里创建文件夹StreamingAssets然后把Json文件放到文件夹下(文件夹目录可以修改代码完成其他需求的文件夹目录使用)
Json格式也很简单{ "appid": "appid11111111" }
文本中只使用了一个数据作为示例。
然后把代码挂载后运行就可以直接出现了

2.代码块

using System.Collections;
using System.Collections.Generic;
using System.IO;
using Defective.JSON;
using UnityEngine;
using UnityEngine.Networking;public class JsonParsingExample : MonoBehaviour
{public string Config = "config.json";public string appid;// Start is called before the first frame updatevoid Start(){StartCoroutine(LoadConfig());}private IEnumerator LoadConfig(){var unityWebRequest = UnityWebRequest.Get(Path.Combine(Application.streamingAssetsPath, Config));yield return unityWebRequest.SendWebRequest();if (unityWebRequest.isHttpError || unityWebRequest.isNetworkError){unityWebRequest.Dispose();Debug.Log("No config, try default ...");yield break;}var data = unityWebRequest.downloadHandler?.text;JSONObject _configJson = new JSONObject(data);unityWebRequest.Dispose();if (!string.IsNullOrWhiteSpace(_configJson["appid"].stringValue)) appid = _configJson["appid"].stringValue;}
}

二、第二种

第二种不需要前期配置,是用的是Unity自带的JsonUtility

using System.Collections;
using System.Collections.Generic;
using System.IO;
using Defective.JSON;
using UnityEngine;
using UnityEngine.Networking;
[SerializeField]
public class JsonUtilityUrl
{public string appid;}
public class JsonParsingExample : MonoBehaviour
{public string Config = "config.json";public string appid;// Start is called before the first frame updatevoid Start(){string _path = Path.Combine(Application.streamingAssetsPath, Config);if (File.Exists(_path)){string jsonContent = System.IO.File.ReadAllText(_path);JsonUtilityUrl urldata = JsonUtility.FromJson<JsonUtilityUrl>(jsonContent);if (urldata.appid != string.Empty)appid = urldata.appid;Debug.Log("TokenUrl" + appid);}}}

总结

本文内容可直接使用,后期扩展。非常简单。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/315380.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【计算机毕业设计】SSM实验室设备管理

项目介绍 本项目为后台管理系统&#xff0c;分为管理员、老师、学生三种角色&#xff1b; 管理员角色包含以下功能&#xff1a; 信息管理&#xff1a;用户管理&#xff1b; 基础管理&#xff1a;实验室管理,实验室申请记录,设备管理,设备记录管理,耗材管理,耗材记录管理等功能…

看懂 Git Graph

目录 文章目录 目录Git Graph看懂 GraphVSCode Git Graph 插件1. 选择展示的 Branches2. Checkout 到一个 Branch3. 找到指定 Branch 最新的 Commit4. 找到 Branch 分叉口5. 查看 2 个 Commits 之前的区别 Git Graph Git Graph 是服务于 Git 分支管理的一种可视化工具&#xf…

改变传媒格局的新趋势

在如今信息高速发展的时代&#xff0c;人们早已进入了一个以手机为中心的智能化时代。随着科技的迅猛发展&#xff0c;手机无人直播成为了一种新兴的传媒形态&#xff0c;正逐渐改变着传媒格局。本文将从手机无人直播的定义、发展背景和影响等方面进行探讨。 首先&#xff0c;…

HarmonyOS官网案例解析——保存应用数据

介绍 本篇Codelab将介绍如何使用基础组件Slider&#xff0c;通过拖动滑块调节应用内字体大小。要求完成以下功能&#xff1a; 实现两个页面的UX&#xff1a;主页面和字体大小调节页面。拖动滑块改变字体大小系数&#xff0c;列表页和调节页面字体大小同步变化。往右拖动滑块字体…

vue3+echarts可视化——记录我的2023编程之旅

文章目录 ⭐前言⭐2023我在csdn的旅途痕迹&#x1f496;node系列文章&#x1f496;vue3系列文章&#x1f496;python系列文章&#x1f496;react系列文章&#x1f496;js拖拽相关文章&#x1f496;小程序系列文章&#x1f496;uniapp系列文章 ⭐可视化布局&#x1f496; git 数…

Windows使用IIS服务搭建WebDAV站点结合内网穿透公网访问

文章目录 1. 安装IIS必要WebDav组件2. 客户端测试3. cpolar内网穿透3.1 打开Web-UI管理界面3.2 创建隧道3.3 查看在线隧道列表3.4 浏览器访问测试 4. 安装Raidrive客户端4.1 连接WebDav服务器4.2 连接成功4.2 连接成功总结&#xff1a; 自己用Windows Server搭建了家用NAS主机&…

FPGA项目(14)——基于FPGA的数字秒表设计

1.功能设计 设计内容及要求: 1.秒表最大计时范围为99分59. 99秒 2.6位数码管显示&#xff0c;分辨率为0.01秒 3.具有清零、启动计时、暂停及继续计时等功能 4.控制操作按键不超过二个。 2.设计思路 所采用的时钟为50M&#xff0c;先对时钟进行分频&#xff0c;得到100HZ频率…

FusionAccess配置Lite AD

1、Lite AD的安装及配置 Lite AD流程&#xff1a; &#xff08;1&#xff09;创建一个新的Windows 10&#xff0c;安装tools&#xff0c;再安装ITA组件&#xff08;安装Lite AD会自动安装VAG/VLB&#xff09; &#xff08;2&#xff09;创建一个新的Windows 10&#xff0c;安…

跑腿配送系统技术探析

概述 跑腿配送系统是一种基于现代科技的服务平台&#xff0c;通过智能化的技术手段&#xff0c;实现用户需求的快速响应和高效配送。本文将探讨该系统的核心技术原理&#xff0c;以及在实际开发中的一些代码示例。 技术原理 1. 用户请求与任务分配 跑腿配送系统的第一步是…

健康元有中国顶级BigPharma的样子

《多肽链》原创出品 作者&#xff5c;严睿 无需赘言&#xff0c;创新药已然是中国医药行业长周期运行的最强主脉。 在经历了一二级市场的资本寒冬和疫情扰动后&#xff0c;“冷调整”让中国创新药行业重归理性&#xff0c;市场环境也随着医疗改革影响的边际递减&#xff0c;…

大模型通向AGI,腾讯云携手业界专家探索创新应用新风向

引言 一年过去&#xff0c;ChatGPT 引发的 AGI 热潮丝毫未减。只是相对于最初推出时掀起的全民大模型热&#xff0c;如今关于该如何落地的讨论更多了起来。 随着算力、数据库、大数据等底层技术的发展&#xff0c;大模型的建设与在各个领域的应用正在加速推进&#xff0c;那么…

Afuzz:一款功能强大的自动化Web路径模糊测试工具

关于Afuzz Afuzz是一款功能强大的自动化Web路径模糊测试工具&#xff0c;该工具专为Web安全专家和漏洞奖励Hunter设计&#xff0c;可以帮助我们以自动化的形式扫描和收集目标Web应用程序中的页面、语言和相关统计分析等数据。 功能介绍 1、Afuzz可以通过自动化的形式检测目标…