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

相关文章

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. 反序列化

Python中Json和其他类型相互转换的实现示例

《Python中Json和其他类型相互转换的实现示例》本文介绍了在Python中使用json模块实现json数据与dict、object之间的高效转换,包括loads(),load(),dumps()... 项目中经常会用到json格式转为object对象、dict字典格式等。在此做个记录,方便后续用到该方

GSON框架下将百度天气JSON数据转JavaBean

《GSON框架下将百度天气JSON数据转JavaBean》这篇文章主要为大家详细介绍了如何在GSON框架下实现将百度天气JSON数据转JavaBean,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言一、百度天气jsON1、请求参数2、返回参数3、属性映射二、GSON属性映射实战1、类对象映

使用Java读取本地文件并转换为MultipartFile对象的方法

《使用Java读取本地文件并转换为MultipartFile对象的方法》在许多JavaWeb应用中,我们经常会遇到将本地文件上传至服务器或其他系统的需求,在这种场景下,MultipartFile对象非... 目录1. 基本需求2. 自定义 MultipartFile 类3. 实现代码4. 代码解析5. 自定

MySQL 数据库表操作完全指南:创建、读取、更新与删除实战

《MySQL数据库表操作完全指南:创建、读取、更新与删除实战》本文系统讲解MySQL表的增删查改(CURD)操作,涵盖创建、更新、查询、删除及插入查询结果,也是贯穿各类项目开发全流程的基础数据交互原... 目录mysql系列前言一、Create(创建)并插入数据1.1 单行数据 + 全列插入1.2 多行数据

Java中数组与栈和堆之间的关系说明

《Java中数组与栈和堆之间的关系说明》文章讲解了Java数组的初始化方式、内存存储机制、引用传递特性及遍历、排序、拷贝技巧,强调引用数据类型方法调用时形参可能修改实参,但需注意引用指向单一对象的特性... 目录Java中数组与栈和堆的关系遍历数组接下来是一些编程小技巧总结Java中数组与栈和堆的关系关于

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3