PlayerFrefs持久化学习笔记

一.概述

  PlayerPrefs是Unity提供的可以用于存储读取玩家数据的公共类。进入这个类中,可以看到如下图内容:

   类中提供了一个无参构造函数,此外提供的所有public方法都是静态方法(从这点看无参构造使用时好像根本用不上,没有公共的成员方法或成员属性)。大致看一下这些静态方法的参数,可以发现有很多都是string类型的key和string、int或者float类型的value,事实上PlayerPrefs的存储结构类似于键值对,键都是string类型的,值有int、float和string三种类型(只能存储三种类型的值,有一定局限性)。接下来总结常用的方法。

二.PlayerPrefs的常用方法

1.存储相关

根据不同的值类型提供了不同的静态存储方法,将对应的键和值存储到内存里(临时数据),在游戏结束时,Unity会自动把内存中的数据存储到硬盘中(持久化数据),但是这样也导致游戏崩溃时,数据会丢失。

可以使用Save方法手动将内存中的数据存储到硬盘中,解决游戏崩溃等突发情况导致数据丢失的问题。

PS:在Windows中可以在注册表中查看或者修改存储的数据。

2.读取相关

每种数据Unity都提供了两种读取方法的重载,一种是根据键得到值,如果没有相应的键会获得对应值类型的默认值,另一种方法可以指定如果没有找到这个键获得的默认值(可以用于基础数据的初始化)。注意:读取的方法是从内存中读取,不是从硬盘中读取,也就是说只要set的值都能读取到,不是需要save后才能读取到。

3.判断是否存在某数据

4.删除数据

删除可以清空所有数据和指定删除某个键的数据。

posted @   movin2333  阅读(139)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示