Unity中数据的存储与交互的初步分析(PlayerPrefs,Dictionary,JsonUnility)
1.PlayerPrefs
PlayerPrefs.SetString(key,Value); PlayerPrefs.GetString(key,Value);字符串类型
PlayerPrefs.SetFloat(key,Value); PlayerPrefs.GetFloat(key,Value);浮点类型
PlayerPrefs.SetInt(key,Value); PlayerPrefs.GetInt(key,Value);数值类型
PlayerPrefs.DeleteKey();PlayerPrefs.DeleteAll();删除
PlayerPrefs.HasKey();返回一个布尔值,是否有该Key值
2.Dictionary
Dictionary<string,string>,一般的,在编辑代码的时候,仅仅打出Dictionary是无法使用using的。这是就需要把<Tkey,Tvalue>,尖括号打上,键值对填写
Dictionary<Tkey,Tvalue>从Dictionary的声明的参数中就可以看出,Dictionary的键值对的类型几乎可以是任何类型,可以是List 可以是Class可以使常见的 int float string 。
3.JsonUnility 常用的几个方法
JsonUnility.ToJson();
JsonUnility.FromJson();
JsonUnility.FromJsonOverWrite();
Json的特别之处就是可以实时的与文件进行交互存取,但是若是使用Json中的定义的键值对,则需
a.引用using System;
b.在一个普通类中或者容器中 定义变量即JsonUnility的Key值
c.在这个普通类定义的前面加上[seriesable]
三者的共同点:
三者都是以键值对的形式进行存储,都可以为游戏或者软件的运行将数据进行缓存
三者的不同点:
PlayerPrefs可以将数据存在本地的注册表内,存储方便,但是不能与网络进行交互,适合本地存储的单机类游戏。
JsonUnility是以Json语言进行交互,它利用Json语言贴近计算机编码语言,易存取,易交互的特点,能与网络进行交互。但是相对于PlayerPrefs来说,相对比较麻烦。
Dictionary是可以读取Text文件的内容,讲Text中的文件进行简单处理,就可以存储成为键值对,相对于JsonUnility来说,它没有那种,及时更新数据,不能被转换成方法或者吧类中的属性的特点:
JsonUnility
Unity中数据的存储与交互的初步分析(PlayerPrefs,Dictionary,JsonUnility)的更多相关文章
- Android笔记——Android中数据的存储方式(二)
我们在实际开发中,有的时候需要储存或者备份比较复杂的数据.这些数据的特点是,内容多.结构大,比如短信备份等.我们知道SharedPreferences和Files(文本文件)储存这种数据会非常的没有效 ...
- Android笔记——Android中数据的存储方式(一)
Android中数据的存储方式 对于开发平台来讲,如果对数据的存储有良好的支持,那么对应用程序的开发将会有很大的促进作用. 总体的来讲,数据存储方式有三种:一个是文件,一个是数据库,另一个则是网络.其 ...
- Matlab中数据的存储方式
简介 MATLAB提供了丰富的算法以及一个易于操作的语言,给算法研发工作者提供了很多便利.然而MATLAB在执行某些任务的时候,执行效率偏低,测试较大任务量时可能会引起较长时间的等待.未解决这个问题, ...
- unity中的文件存储路径与各平台(Android,iOS)的关系
原文链接:unity中的文件存储路径与各平台(Android,iOS)的关系 主要是这个问题困扰我了一阵子,所以特写写... unity中的的各种存储方法的对应关系(直接上截图吧) 重点说的是Appl ...
- 关于Unity中的本地存储
本地存储 在做游戏的时候,经常需要在本机存储一些数据,比如闯关类游戏要记录闯到第几关,做单机的时候要把数据保存到本地,下次启动的时候数据存在,就是把数据保存到磁盘里面或者手机的flash闪存里面. U ...
- Android笔记——Android中数据的存储方式(三)
Android系统集成了一个轻量级的数据库:SQLite,所以Android对数据库的支持很好,每个应用都可以方便的使用它.SQLite作为一个嵌入式的数据库引擎,专门适用于资源有限的设备上适量数据存 ...
- 【Cocos2d-X开发学习笔记】第29期:游戏中数据的存储(上)
本系列学习教程使用的是cocos2d-x-2.1.4(最新版为3.0alpha0-pre) ,PC开发环境Windows7,C++开发环境VS2010 一般游戏中都需要记录玩家数据,便于玩家下次登录时 ...
- 【Cocos2d-X开发学习笔记】第30期:游戏中数据的存储(下)
本系列学习教程使用的是cocos2d-x-2.1.4(最新版为3.0alpha0-pre) ,PC开发环境Windows7,C++开发环境VS2010 一.对数据进行编解码 在上一期中,我们使用了CC ...
- C/C++中数据的存储
学java时了解到不同的数据在系统中存储的位置不一样,有的存在栈里,有的存在堆里.学C/C++时没注意过这个,最近学数据结构时遇到了问题:在定义一个结构体的指针时,系统如何给它分配的空间?从而让我想去 ...
随机推荐
- PIC单片机的i2c的程序
#include<pic.h>#define uchar unsigned char#define uint unsigned int#define add 0xaa__CONFIG(0x ...
- [工具推荐]003.Tortoisegit使用教程(补充)
前文介绍: 在前文<[工具推荐]003.Tortoisegit使用教程>中详细介绍了如何使用Tortoisegit的使用,但是大家使用后反映一点,就是每次操作都需要输入账号名和 ...
- STM32读取HX711(AD)模块数据——压力传感器
背景:在无人机动力系统的选型时,为了测试无人机的动力系统所能提供的最大拉力,使用压力传感装置测量拉力. 链接: 压力传感器tb链接: HX711模块是一个24位精度的AD模块. (1)https:// ...
- 七个生产案例告诉你BATJ为何选择ElasticSearch!应用场景和优势!
本文来源于公众号[胖滚猪学编程],转载请注明出处. 从今天开始,想和你一起死磕ElasticSearch,学习分布式搜索引擎,跟着胖滚猪就对了! 既然是ES的第一课,那么最重要的是让你爱上它!不想说那 ...
- 跨域解决方案 - JSONP
目录 1. 定义 2. JSONP 解决跨域 3. 应用场景 4. 代码演示 1. 定义 在HTML 中, script 标签有两个个性质: script 标签可以不受同源策略的限制去访问服务器资源, ...
- js在运算时的类型转换
日期类型与数字类型的运算 在加法时将日期对象与数字都当作字符串进行连接 字符串的运算方式中没有减法.乘法.除法.转化成数字类型进行运算 字符串类型字符与数字类型的运算 在加法时将二者都转换成字符串进行 ...
- undefined attribute name (XXXX)
Window --> Preferences --> Web --> HTML Files --> Editor --> Validation --> Attrib ...
- Nginx 笔记(一)nginx简介与安装
个人博客网:https://wushaopei.github.io/ (你想要这里多有) Nginx 简介: 1.介绍 nginx 的应用场景和具体可以做什么事情 2.介绍什么是反向代理 3.介 ...
- Java实现 LeetCode 833 字符串中的查找与替换(暴力模拟)
833. 字符串中的查找与替换 对于某些字符串 S,我们将执行一些替换操作,用新的字母组替换原有的字母组(不一定大小相同). 每个替换操作具有 3 个参数:起始索引 i,源字 x 和目标字 y.规则是 ...
- Java实现 LeetCode 821 字符的最短距离(暴力)
821. 字符的最短距离 给定一个字符串 S 和一个字符 C.返回一个代表字符串 S 中每个字符到字符串 S 中的字符 C 的最短距离的数组. 示例 1: 输入: S = "loveleet ...