U3d-Json读取数组

2024-04-12 15:58
文章标签 读取 数组 json u3d

本文主要是介绍U3d-Json读取数组,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

U3d-Json读取数组


Json文件:

{"level1":["[1,1,1,1,1,1,1,1,1,1]","[1,1,1,1,1,1,0,4,1,1]","[1,1,1,1,1,1,0,0,1,1]","[1,1,1,1,1,1,3,0,1,1]","[1,1,1,1,1,1,0,0,1,1]","[1,1,1,1,1,1,0,0,1,1]","[1,1,1,1,1,1,0,0,1,1]","[1,1,1,1,1,1,1,1,1,1]"],"level2":["[1,1,1,1,1,1,1,1,1,1]","[1,1,1,3,0,1,2,1,1,1]","[1,1,1,0,0,1,0,1,1,1]","[1,1,1,0,0,0,0,0,4,1]","[1,1,1,0,0,0,0,0,0,1]","[1,1,1,1,0,1,0,0,1,1]","[1,1,1,1,0,1,0,0,1,1]","[1,1,1,1,1,1,1,1,1,1]"],"level3":["[1,1,1,1,1,1,1,1,1,1]","[1,1,1,0,0,0,0,1,1,1]","[1,1,0,0,0,0,0,0,0,1]","[1,1,0,1,1,1,0,0,0,1]","[1,0,0,0,1,1,0,0,0,1]","[1,4,0,0,0,1,2,0,3,1]","[1,1,0,0,0,1,0,0,0,1]","[1,1,1,1,1,1,1,1,1,1]"],"level4":["[1,1,1,4,0,0,0,0,0,1]","[1,1,1,1,1,1,1,0,0,1]","[1,1,0,0,0,0,1,0,0,1]","[1,0,0,0,0,0,1,0,0,1]","[1,0,0,1,1,0,0,3,0,1]","[1,0,0,0,0,0,2,0,2,1]","[1,0,0,0,0,0,0,0,0,1]","[1,0,0,1,0,0,1,1,1,1]"],"level5":["[1,1,1,1,0,0,1,0,1,1]","[1,1,1,4,0,0,0,0,1,1]","[1,1,1,2,0,0,0,1,1,1]","[1,1,1,0,1,1,0,2,1,1]","[1,1,3,0,0,1,0,0,1,1]","[1,1,0,0,0,0,0,0,1,1]","[1,1,1,0,0,0,0,0,1,1]","[1,1,1,0,1,1,0,0,1,1]"],"level6":["[1,1,1,1,1,1,1,1,1,1]","[1,1,1,1,0,0,0,0,4,1]","[1,1,1,1,1,1,0,0,0,0]","[1,1,1,1,0,0,0,0,0,3]","[1,1,1,1,0,0,0,0,0,0]","[1,1,1,1,0,2,0,0,0,0]","[1,1,1,1,1,1,0,0,0,0]","[1,1,1,1,1,1,0,0,1,1]"],"level7":["[1,1,1,1,1,0,0,0,0,4]","[1,1,0,0,0,0,0,0,0,2]","[1,1,0,0,0,0,1,1,0,0]","[1,1,0,0,0,0,0,1,0,0]","[1,1,0,0,0,0,0,0,2,0]","[1,1,0,0,0,1,0,0,2,0]","[1,1,0,0,3,0,0,0,2,0]","[1,1,1,1,1,1,1,0,0,0]"],"level8":["[0,0,0,0,0,0,0,1,1,1]","[0,1,1,1,0,0,0,4,0,0]","[0,1,0,0,0,0,0,0,1,0]","[0,2,0,0,0,0,0,0,1,0]","[2,2,0,1,0,0,0,0,1,0]","[1,1,0,0,0,0,0,0,0,0]","[1,3,0,0,0,0,0,0,0,1]","[1,0,0,1,1,0,0,0,1,1]"],"level9":["[4,2,0,0,0,0,0,0,0,0]","[1,1,1,1,1,1,1,1,1,0]","[0,0,0,0,0,0,0,0,0,2]","[0,1,1,1,1,1,1,1,1,1]","[2,0,0,0,0,0,0,0,0,0]","[1,1,1,1,1,1,1,1,1,0]","[3,0,0,0,0,0,0,0,0,2]","[1,1,1,1,1,1,1,1,1,1]"],"level10":["[1,1,0,0,0,0,0,0,0,4]",
"[1,1,0,1,1,0,0,0,1,2]",
"[1,1,0,2,0,0,1,1,1,0]",
"[1,1,0,0,0,0,1,0,0,3]",
"[1,1,0,1,0,0,0,0,0,0]",
"[1,1,0,1,0,0,0,1,0,0]",
"[1,1,0,1,0,1,0,1,1,1]",
"[1,1,0,1,0,0,0,0,0,2]"]
}

//读取

using LitJson;
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;[Serializable]
public class LevelInfo
{public int[,] Levellist = new int[,] { };public int Wight { get; set; } //宽public int Height { get; set; } //高
}
public class LevelDate
{public static List<LevelInfo> GetLevel(){List<LevelInfo> LevelList = new List<LevelInfo>();TextAsset asset = Resources.Load<TextAsset>("Content/Levels");//Debug.Log(asset.text);JsonData data = JsonMapper.ToObject(asset.text);//Debug.Log(data.Count);for (int i = 0; i < data.Count; i++)//data.Count = 2{//JsonData data_1 = data[i];//Debug.Log(data[i].Count);LevelInfo levelinfo = new LevelInfo();List<string[]> Linshi = new List<string[]>();for (int j = 0; j < data[i].Count; j++) //data[i].Count = 8{//把读出来的第一列字符串的数字分割出来保存在Character_array数组里string[] Character_array = (data[i][j].ToString()).Split(new char[3] {'[',',',']'});Linshi.Add(Character_array);}//Debug.Log(Linshi.Count + "-----------");levelinfo.Height = Linshi.Count; //高levelinfo.Wight = Linshi[0].Length; //宽levelinfo.Levellist = new int[levelinfo.Height, levelinfo.Wight];for (int n = 0; n < Linshi.Count; n++) //levelinfo.Linshi.Count = 8{//为什么k = 1,k<levelinfo.Linshi[n].Length-1,因为前后有空格for (int k = 1; k < Linshi[n].Length-1; k++) // levelinfo.Linshi[n] = 10{//Debug.Log(Int32.Parse(Linshi[n][k]));levelinfo.Levellist[n, k - 1] = Int32.Parse(Linshi[n][k]);} }LevelList.Add(levelinfo);}return LevelList;}
}

这篇关于U3d-Json读取数组的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/897582

相关文章

Linux下利用select实现串口数据读取过程

《Linux下利用select实现串口数据读取过程》文章介绍Linux中使用select、poll或epoll实现串口数据读取,通过I/O多路复用机制在数据到达时触发读取,避免持续轮询,示例代码展示设... 目录示例代码(使用select实现)代码解释总结在 linux 系统里,我们可以借助 select、

JavaScript对象转数组的三种方法实现

《JavaScript对象转数组的三种方法实现》本文介绍了在JavaScript中将对象转换为数组的三种实用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友... 目录方法1:使用Object.keys()和Array.map()方法2:使用Object.entr

java中判断json key是否存在的几种方法

《java中判断jsonkey是否存在的几种方法》在使用Java处理JSON数据时,如何判断某一个key是否存在?本文就来介绍三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目http://www.chinasem.cn录第一种方法是使用 jsONObject 的 has 方法

Go语言中json操作的实现

《Go语言中json操作的实现》本文主要介绍了Go语言中的json操作的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录 一、jsOChina编程N 与 Go 类型对应关系️ 二、基本操作:编码与解码 三、结构体标签(Struc

C#实现SHP文件读取与地图显示的完整教程

《C#实现SHP文件读取与地图显示的完整教程》在地理信息系统(GIS)开发中,SHP文件是一种常见的矢量数据格式,本文将详细介绍如何使用C#读取SHP文件并实现地图显示功能,包括坐标转换、图形渲染、平... 目录概述功能特点核心代码解析1. 文件读取与初始化2. 坐标转换3. 图形绘制4. 地图交互功能缩放

java读取excel文件为base64实现方式

《java读取excel文件为base64实现方式》文章介绍使用ApachePOI和EasyExcel处理Excel文件并转换为Base64的方法,强调EasyExcel适合大文件且内存占用低,需注意... 目录使用 Apache POI 读取 Excel 并转换为 Base64使用 EasyExcel 处

Vue3 如何通过json配置生成查询表单

《Vue3如何通过json配置生成查询表单》本文给大家介绍Vue3如何通过json配置生成查询表单,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录功能实现背景项目代码案例功能实现背景通过vue3实现后台管理项目一定含有表格功能,通常离不开表单

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法

《JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法》:本文主要介绍JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法,每种方法结合实例代码给大家介绍的非常... 目录引言:为什么"相等"判断如此重要?方法1:使用some()+includes()(适合小数组)方法2

C#下Newtonsoft.Json的具体使用

《C#下Newtonsoft.Json的具体使用》Newtonsoft.Json是一个非常流行的C#JSON序列化和反序列化库,它可以方便地将C#对象转换为JSON格式,或者将JSON数据解析为C#对... 目录安装 Newtonsoft.json基本用法1. 序列化 C# 对象为 JSON2. 反序列化