Unity3D学习之数据持久化——PlayerPrefs


1. 概念

在这里插入图片描述

就是保存存档和读取存档。
在这里插入图片描述

分为两部分,存储和读取,先看存储在看读取

2. 存储

PlayerPrefs 是unity提供可以存储和读取玩家数据的公共类

在这里插入图片描述

2.1 存到内存当中

在这里插入图片描述

2.2 存到硬盘当中

在这里插入图片描述

2.3 局限性

在这里插入图片描述

2.4 相同键会覆盖

在这里插入图片描述
上面定义过 PlayerPrefs.SetInt(“myAge”,18)
后面再定义PlayerPrefs.SetFloat(“myAge”,20.2f)
后面进行读取int型 myAge时,会变成默认值0

3.读取

在这里插入图片描述

3.1 int型

在这里插入图片描述
打印结果 0 和 100

3.2 float型

在这里插入图片描述

3.3 string型

在这里插入图片描述

3.4 判断数据是否存在

在这里插入图片描述

4. 删除数据

在这里插入图片描述

5. 存储位置

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

6. 反射

在这里插入图片描述

6.1 判断一个类型的对象是否可以让另一个类型为自己分配空间

1)父类装子类
2)是否可以从一个类型的对象为自己分配空间

创建两个有继承关系的类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

6.2 通过反射获得泛型类型

在这里插入图片描述在这里插入图片描述

7 数据管理类

在这里插入图片描述

单例模式适合管理类
创建管理类
在这里插入图片描述
测试类
在这里插入图片描述

7.1 存储

在这里插入图片描述

7.1.1 获取传入数据的所有字段

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.1.2 定义一个key的规则

在这里插入图片描述

7.1.3 遍历字段获得key

在这里插入图片描述

获得了对应的key在这里插入图片描述

7.1.4 声明私有方法进行存储

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.2 读取

在这里插入图片描述
不需要在外部创建对象,然后传入函数
由函数直接返回对象,让外部少写一行代码

8 List数据类型存储

在这里插入图片描述

通过IList 父类进行类型判断,因为List需要泛型定义,不确定
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

9 Doctionary数据类型

在这里插入图片描述

和List一样,因为Dictionary的泛型不清楚,通过获得其父类获得object

在这里插入图片描述
通过增加"key" 和 "value"来分别存储一对键值对

10 自定义类成员

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

11 读取常用数据类型

在这里插入图片描述

11.1 获得一个数据

在这里插入图片描述
根据字段类型 来判断 根据哪个API判断

11.2 SaveData函数

函数说明在 7.2
在这里插入图片描述

12 读取List数据类型

在这里插入图片描述

13 读取Dictionary数据类型

在这里插入图片描述

14.读取自定义类型

在这里插入图片描述

修改游戏逻辑读取存档

在这里插入图片描述执行
在执行save方法的时候,进行存盘
在这里插入图片描述

15. 数据存储的位置

在这里插入图片描述

16.数据加密思路

在这里插入图片描述

16.1 找不到

在这里插入图片描述

16.2 看不懂

在这里插入图片描述

16.3 解不出

在这里插入图片描述

16.4 PlayerPrefs尝试加密

在这里插入图片描述

  • 21
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值