位置: 编程技术 - 正文

【Unity3D插件】在Unity中读写文件数据:LitJSON快速教程(unity 3d插件)

编辑:rootadmin
欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多U3D资源、U3D培训视频、U3D教程、U3D常见问题、U3D项目源码,【狗刨学习网】unity极致学院,致力于打造业内unity3d培训、学习第一品牌。  介绍  JSON是一个简单的,但功能强大的序列化数据&#;式。它定义了简单的类型,如布尔,数(int和float)和字符串,和几个数据结构:list和dictionnary。可以在  litjson是用C #编写的,它的目的是要小,快速,易用。它使用了Mono框架。  安装LitJSON  将LitJSON编译好的dll文件通过Import New Asset的方式导入到项目中,再使用Using LitJSON即可使用JSONMapper类中的简便方法。dll的下载地址在这里.  将JSON转化为Object并可逆向转化  为了在.Net程序中使用JSON&#;式的数据。一个自然的方法是使用JSON文本生成一个特定的类的一个新实例;为了匹配类的&#;式,一般存储的JSON字符串是一个字典。  另一方面,为了将对象序列化为JSON字符串,一个简单的导出操作,听起来是个好主意。  为了这个目的,LitJSON包引入了JsonMapper类,它提供了两个用于做到 JSON转化为object 和 object转化为JSON 的主要方法。这两个方法是jsonmapper.toobject和jsonmapper.tojson。  将object转化为字符串之后,我们就可以将这个字符串很方便地在文件中读取和写入了。  一个简单的JsonMapper的例子  在下面的例子中,ToObject方法有一个泛型参数,来指定返回的某种特定的数据类型:即JsonMapper.ToObjectT。  using LitJson;  using System;  public class Person  {  // C# 3.0 auto-implemented properties  public string Name { get; set; }  public int Age { get; set; }  public DateTime Birthday { get; set; }  }  public class JsonSample  {  public static void Main()  {  PersonToJson();  JsonToPerson();  }  public static void PersonToJson()  {  Person bill = new Person();  bill.Name = "William Shakespeare";  bill.Age = ;  bill.Birthday = new DateTime(, 4, );  string json_bill = JsonMapper.ToJson(bill);  Console.WriteLine(json_bill);  }  public static void JsonToPerson()  {  string json = @"  {  ""Name"" : ""Thomas More"",  ""Age"" : ,  ""Birthday"" : ""// ::""  }";  Person thomas = JsonMapper.ToObjectPerson(json);  Console.WriteLine("Thomas' age: {0}", thomas.Age);  }  }  上文的输出:  {"Name":"William Shakespeare","Age":,"Birthday":"// ::"}  Thomas' age:   使用非泛型的JsonMapper.ToObject  当不存在特定的JSON数据类时,它将返回一个JSONData实例。JSONData是一种通用型可以保存任何数据类型支持JSON,包括list和dictionary。  using LitJson;  using System;  public class JsonSample  {  public static void Main()  {  string json = @"  {  ""album"" : {  ""name"" : ""The Dark Side of the Moon"",  ""artist"" : ""Pink Floyd"",  ""year"" : ,  ""tracks"" : [  ""Speak To Me"",  ""Breathe"",  ""On The Run""  ]  }  }  ";  LoadAlbumData(json);  }  public static void LoadAlbumData(string json_text)  {  Console.WriteLine("Reading data from the following JSON string: {0}",  json_text);  JsonData data = JsonMapper.ToObject(json_text);  // Dictionaries are accessed like a hash-table  Console.WriteLine("Album's name: {0}", data["album"]["name"]);  // Scalar elements stored in a JsonData instance can be cast to  // their natural types  string artist = (string) data["album"]["artist"];  int year = (int) data["album"]["year"];  Console.WriteLine("Recorded by {0} in {1}", artist, year);  // Arrays are accessed like regular lists as well  Console.WriteLine("First track: {0}", data["album"]["tracks"][0]);  }  }  上面例子的输出:  Reading data from the following JSON string:  {  "album" : {  "name" : "The Dark Side of the Moon",  "artist" : "Pink Floyd",  "year" : ,  "tracks" : [  "Speak To Me",  "Breathe",  "On The Run"  ]  }  }  Album's name: The Dark Side of the Moon  Recorded by Pink Floyd in   First track: Speak To Me  Reader和Writer  一些人喜欢使用stream的方式处理JSON数据,对于他们, 我们提供的接口是jsonreader和jsonwriter。  JSONMapper实际上是建立在以上两个类的基础上的,所以你可以把这两个类当成是litJSON的底层接口。  使用JsonReader  using LitJson;  using System;  public class DataReader  {  public static void Main()  {  string sample = @"{  ""name"" : ""Bill"",  ""age"" : ,  ""awake"" : true,  ""n"" : .,  ""note"" : [ ""life"", ""is"", ""but"", ""a"", ""dream"" ]  }";  PrintJson(sample);  }  public static void PrintJson(string json)  {  JsonReader reader = new JsonReader(json);  Console.WriteLine ("{0,} {1,} {2,}", "Token", "Value", "Type");  Console.WriteLine (new String ('-', ));  // The Read() method returns false when there's nothing else to read  while (reader.Read()) {  string type = reader.Value != null ?  reader.Value.GetType().ToString() : "";  Console.WriteLine("{0,} {1,} {2,}",  reader.Token, reader.Value, type);  }  }  }  输出如下:  Token Value Type  ------------------------------------------  ObjectStart   PropertyName name System.String  String Bill System.String  PropertyName age System.String  Int System.Int  PropertyName awake System.String  Boolean True System.Boolean  PropertyName n System.String  Double . System.Double  PropertyName note System.String  ArrayStart   String life System.String  String is System.String  String but System.String  String a System.String  String dream System.String  ArrayEnd   ObjectEnd更多内容,请访问【狗刨学习网】unity极致学院 声明:此篇文档时来自于【狗刨学习网】社区-unity极致学院,是网友自行发布的Unity3D学习文章,如果有什么内容侵犯了你的相关权益,请与官方沟通,我们会即时处理。

推荐整理分享【Unity3D插件】在Unity中读写文件数据:LitJSON快速教程(unity 3d插件),希望有所帮助,仅作参考,欢迎阅读内容。

【Unity3D插件】在Unity中读写文件数据:LitJSON快速教程(unity 3d插件)

文章相关热门搜索词:unity插件推荐,unity3d插件下载,unity3d插件下载手机版,unity 插件,unity 插件,unity 3d插件,unity3d插件下载手机版,unityui插件,内容如对您有帮助,希望把文章链接给更多的朋友!

通过制作Flappy Bird了解Native 2D中的Sprite,Animation 欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多U3D资源、U3D培训视频、U3D教程、U3D常见问题、U3D项目源码,【狗刨学习网】unity极致学

通过制作Flappy Bird了解Native 2D中的RigidBody2D和Collider2D 欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多U3D资源、U3D培训视频、U3D教程、U3D常见问题、U3D项目源码,【狗刨学习网】unity极致学

Unity创建项目及基本面板介绍 欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多U3D资源、U3D培训视频、U3D教程、U3D常见问题、U3D项目源码,【狗刨学习网】unity极致学

标签: unity 3d插件

本文链接地址:https://www.jiuchutong.com/biancheng/381514.html 转载请保留说明!

上一篇:在Unity中使用事件/委托机制(event/delegate)进行GameObject之间的通信

下一篇:Unity3D中的事件处理

  • 非上市公司股权转让涉及哪些税
  • 发放福利视同销售进项税要转出吗?
  • 研发费用辅助账是什么意思
  • 被投资方宣告发放股票股利
  • 机器配件属于什么报销项目
  • 款已付未收到发票怎么开
  • 企业所得税税率
  • 清算报告与清算方案区别
  • 普票冲红原票要退回吗
  • 搬家费账务处理
  • 一般纳税人开差额票的税率
  • 非居民企业直接投资居民企业取得股息
  • 未到期责任准备金24分法详解
  • 原始凭证的主要类型
  • 长期股权投资的交易费用计入哪里
  • 外购生物资产的成本不包括
  • 长期借款费用会减少吗
  • 无形资产应当按照公允价值进行初始计量吗
  • 存货入账价值计算公式
  • 无形资产摊销怎么计算
  • 应付职工薪酬账务处理例题
  • 固定资产发票未到怎么提折旧
  • 收社团费用怎么说
  • 企业个人所得税申报系统官网
  • 企业发生的咨询费用
  • 现金交易的发票可以认证
  • 三八妇女节要求小班幼儿到校怎么分享
  • 汇算清缴涉及到哪些科目的调整
  • 机票抵扣增值税怎么计算民航发展基金
  • 注册会计师考点分析
  • 年初未交增值税借方怎么处理
  • 租赁押金的法律规定
  • 应收票据收到了吗
  • 多交企业所得税怎么申请抵缴
  • 电脑温度过高会怎么样
  • 华为鸿蒙系统看PDF文件会不多次存
  • 可以关闭系统的快捷键
  • 劳务的完成程度可以采用如下方法确定
  • 年末一般纳税人税率表
  • 劳动合同到期补偿金怎么算
  • 在途货物退货
  • php模板引擎执行时间
  • yarn安装路径
  • php过滤字符
  • 增值税普通发票可以抵扣吗
  • mongodb中主键的默认格式是哪个?
  • 原材料暂估入库分录
  • 企业会计准则在建工程转固定资产
  • 火车票可以抵扣进项吗
  • 活动策划费属于哪个开票项目
  • 车间里停止生产怎么办
  • 转账支付水电费
  • 个税计提多了怎么办,跨年度了
  • 应付职工薪酬要设二级科目吗
  • 注册资本实缴制改为认缴制
  • 小规模普票冲红能退税吗?
  • 年末未分配利润总额计算公式
  • 商业企业库存商品
  • sqlserver批量备份数据库
  • vmware虚拟机步骤
  • win10系统最新版用户维护在哪
  • winxp如何设置自动关机
  • win10系统桌面怎么设置密码
  • linux怎样过滤一个关键字
  • windows7电脑怎么变快
  • linux查看磁盘io负载
  • win10升级后小娜不能用
  • node.js ssh
  • 下载一个网页的所有图片
  • android隐藏
  • js中截取字符串的方法
  • 基于javascript的毕业设计
  • python抓取整站链接
  • 滴滴发票怎么查行程
  • 残疾人个人所得税减免政策
  • 自然人电子税务局下载
  • 青岛税务局局长是什么级别?
  • 江苏高速通行费标准
  • 汽车契税和购置税一样吗
  • 内蒙古个人所得税app下载
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设