江苏网站设计公司,建设网站的时候,wordpress怎么开启,重庆做网络优化公司电话一、拿到了题库
分析一下可以定义的
1、序号#xff0c;用来区分题目数#xff0c;每个题有唯一的序号
2、题目#xff0c;就是下图的Q
3、预设的回答#xff0c;下图的A 分析完我可以知道有三个字段#xff0c;分别是int index、string Q、string A。 二、把字段丢到…一、拿到了题库
分析一下可以定义的
1、序号用来区分题目数每个题有唯一的序号
2、题目就是下图的Q
3、预设的回答下图的A 分析完我可以知道有三个字段分别是int index、string Q、string A。 二、把字段丢到Excel表格里 第一行写字段下面再写数据 三、通过一些工具把Excel转化成Json文件 这个是我常用的把Excel丢进去就好 可以看到生成的Json文件是这样的 看着稍微有点乱可以用格式化工具调整一下
这是我常用的格式化工具 在线JSON校验格式化工具Be JSON 这样就可以清晰分辨我们的题目和预设回答了一些小调整也可以直接在这里处理 四、改Json文件
新建一个txt文本把刚刚生成的数据全部粘贴进文本里并把后缀改成.json
这样就是一个合格的Json文件了 五、生成C#类
还是刚刚那个网站找到Json转C#实体类把你的Json文件丢进去他就能帮你生成一个C#类 在Unity里新建一个QAData类复制这些生成的这些就好了生成的一般都是Root改成自己的类。 六、Json解析
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.Networking;public class Test : MonoBehaviour
{void Start(){StartCoroutine(LoadJson(Application.streamingAssetsPath /QA.json,JsonHandle));}/// summary/// 处理Json数据/// /summaryvoid JsonHandle(string jsonData) {Debug.Log(jsonData);QAData qAData JsonConvert.DeserializeObjectQAData(jsonData);Debug.Log( 共有 qAData.QA.Count 题);foreach (var item in qAData.QA){Debug.Log(item.index); Debug.Log(item.Q); Debug.Log(item.A);}}/// summary/// 读取Json数据/// /summary/// param namepath/param/// param nameaction/param/// returns/returnsIEnumerator LoadJson(string path,UnityActionstring action null){// 提取Json文件UnityWebRequest www UnityWebRequest.Get(path);yield return www.SendWebRequest();if (www.result UnityWebRequest.Result.Success){string jsonString www.downloadHandler.text;action?.Invoke(jsonString);}else{Debug.Log(读取失败);}}
}这样就全部拆出来了答题系统也是一样的思路。 这样做的好处是当需要外部去修改题库时也无需重新打包直接改Json文件就好了