news 2026/2/26 20:53:34

Unity学习笔记(二十)PlayerPrefs(一)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Unity学习笔记(二十)PlayerPrefs(一)

目录

PlayerPrefs是什么

存储原理

读取相关

删除数据

PlayerPrefs数据唯一性


PlayerPrefs是什么

是Unity提供的可以用于存储读取玩家数据的公共类

存储原理

PlayerPrefs的数据存储,类似键值对存储,一个键对应一个值
提供了存储3种数据的方法 ,int float string
键:string
值:int float string 对应三种3API

调用set方法存只是到了内存中

PlayerPrefs.SetInt("myAge",18); PlayerPrefs.SetFloat("myHeight",177.5f); PlayerPrefs.SetString("myName", "shan");

当游戏结束时,Unity会自动把数据存到硬盘中
如果游戏不是正常结束的 而是崩溃 数据是不会存到硬盘中的
只要调用该方法 ,就马上会存到硬盘中

PlayerPrefs.Save();

PlayerPrefs是有局限性的,它只能存3种类型的数据

如果你想要存储别的类型的数据,只能降低精度或者上升精度来进行存储

bool sex = true; PlayerPrefs.SetInt("sex", sex ? 1 : 0);

如果不同的数据类型用同一键名进行存储,就会进行覆盖。

PlayerPrefs.SetFloat("myAge",20.0f);

读取相关

注意 运行时,只要你Set了对应键值对
即使你没有马上存储Save在本地
也能够读取出信息

读取了上面float的值,不会报错 但会读取为0 ,因为不存在int类型的(被覆盖了)

int age = PlayerPrefs.GetInt("myAge");

如果找不到myAge对应的值,就会返回函数的第二个参数,默认值

age = PlayerPrefs.GetInt("myAge",100);

判断数据是否存在

if (PlayerPrefs.HasKey("myName")) { print("存在"); }

删除数据

删除指定键值对

PlayerPrefs.DeleteKey("myAge");

删除所有存储的信息

PlayerPrefs.DeleteAll();

PlayerPrefs存储

PlayerPrefs 存储的数据位置
HKCU\Software\[公司名称]\[产品名称] 项下的注册表中
其中公司和产品名称是 在“Project Settings”中设置的名称。

运行 regedit
HKEY_CURRENT_USER
SOFTWARE6
Unity
UnityEditor
公司名称
产品名称

Android

data/data/包名/shared_prefs/pkg-name.xml

IOS

/Library/Preferences/[应用ID].plist

PlayerPrefs数据唯一性

PlayerPrefs中不同数据的唯一性
是由key决定的,不同的key决定了不同的数据
同一项目中 如果不同数据key相同 会造成数据丢失
要保证数据不丢失就要建立一个保证key唯一的规则

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/18 10:09:21

书籍-严羽《沧浪诗话》

严羽《沧浪诗话》详细介绍 书籍基本信息 书名:沧浪诗话 作者:严羽(南宋) 成书时间:南宋理宗时期(约公元1230-1250年) 卷数:1卷(分五章) 类别:诗歌…

作者头像 李华
网站建设 2026/2/17 16:46:58

2025年有哪些好用的PDF编辑器推荐?今天带来5款深度测评

数字化办公的深化让PDF编辑器从“可选工具”变为“核心装备”,但用户选购时常常陷入“功能看似全却不好用”“符合场景却不安全”的矛盾——企业需要兼顾协作与数据安全,个人追求高效与低成本,政府则聚焦合规与国产化。基于2025年最新市场需求…

作者头像 李华
网站建设 2026/2/7 20:11:51

构筑测试事业的北极星——软件测试愿景制定指南

为什么测试团队需要明确的愿景? 在瞬息万变的软件开发领域中,软件测试作为质量保障的核心环节,常常陷入被动响应的工作模式——追逐不断变更的需求,应对持续迭代的产品,处理突发的线上问题。这种被动姿态不仅使测试人…

作者头像 李华
网站建设 2026/2/21 23:20:43

如何在没有经费的情况下做科研

实验的家伙事 在做这个工作之前,笔者的主业是合成生物学与分子生物学,见我之前的博文《质粒拷贝数以及启动子活性的定量测量》。在研究过程中有一些发现,也积累了几个点子和想法。然而这些想法无一实现,主要问题是没有钱和资源来…

作者头像 李华
网站建设 2026/2/25 6:55:44

打造自己的Python工具集

最近在使用Jep(Java Embedded Python)做一个Java调用Python代码的案例(一种在网页上编写并支持代码即时运行)时发现一个问题。由于每个人都在页面上编写属于自己的python脚本,而这些python脚本可能会使用一些诸如计算时…

作者头像 李华