当前位置:   article > 正文

读取JSON文件 如何在Unity中读取Json文件中的数据_unity读取json文件

unity读取json文件

Josn是一种轻量级的数据交换格式,JSON能够描述四种简单的类型(字符串、数字、布尔值及null)和两种结构化类型(对象及数组),在Unity里经常用Json来处理大量的字符串,容易解析,效率非常快。

基本结构
1、语法
数据存在键值对中
数据由逗号分隔
花括号保存对象
方括号保存数组
eg:表示两个学生的基本信息

{“Student”:[{“name”:”Tom”,”age”:19,”gender:”M”}, {“name”:”Marry”,”age”:22,”gender:”W”}] }
  • 1

2、Json开发
使用两种类库:(需要将System.Json.dll和LitJson.dll放到工程目录下)
System.Json(生成Json文件)
LitJson(解析Json文件)
(1)System.Json的类
JsonArray类 JsonArray是0个或多个JsonValue对象的有序序列
JsonObject类 JsonObject是一个无序的0个或更多个的键值对集合
JsonValue类 一个具体的Json对象的Value值
示例
Unity中创建一个空物体,在其上挂载一个脚本,命名为JsonScript.cs,写个方法来在Unity中生成一个Json文件,然后再写个方法来读取这个Json文件。前提要导入System.Json.dll和LitJson.dll两个库文件到Unity中。代码如下:

using UnityEngine;
using System.Collections;
using System.Json;
using LitJson;
using System.IO;
public class JsonScript : MonoBehaviour { //文件要保存的路径
string path;
void Start ()
 { 
	 path = Application.streamingAssetsPath+ "/JsonTest.txt"; //CreateJson(); ReadJson(); 
 } 
 void CreateJson()
{ //创建一个json对象,相当于一个{}
 	JsonObject js = new JsonObject();//定义一个json的value值
 	JsonValue name = "洛克萨斯之手"; //把该值加到js对象里
	js.Add("name", name);
 	//Q技能 JsonObject q = new JsonObject();
	q.Add("Q技能", "大杀四方");
	JsonArray time = new JsonArray(9,8,7,6,5);
	q.Add("冷却时间", time);
	q.Add("消耗", 30);
	 //E技能
	 JsonObject e = new
	JsonObject();
	e.Add("E技能", "无情铁手");
	e.Add("冷却时间", new JsonArray(24,21, 18, 15, 12));
	JsonArray skill = new JsonArray(q, e);
	js.Add("技能", skill); //写入流路径 StreamWriter writer = new
	StreamWriter(path);
	js.Save(writer); //写入流把数据写入文档后自动更新
	writer.AutoFlush = true; //关闭流 writer.Close(); 
	}
	
	 //解析json文件
	void ReadJson()
	 {
	  //fileInfo类提供了可以创建/打开/移动/拷贝一个文件 
	  FileInfo file = new
		FileInfo(path); //打开文件
	 StreamReader reader= file.OpenText();
	//读取文件里的内容,从流的当前位置到末尾读取流 
	string str = reader.ReadToEnd();
	//使用JsonMapper类把字符串转成json对象 
	JsonData data =JsonMapper.ToObject(str); Debug.Log(data["技能"][0]["冷却时间"][0]); }
	}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45

生成的Json文件如下图:
示例

添加描述
当然,游戏中这么简单是远远不够的,这只是操作方法,后面的还需要大家慢慢精炼

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/794145
推荐阅读
相关标签
  

闽ICP备14008679号