Unity 数据读取|(六)PlayerPrefs解析

简介: Unity 数据读取|(六)PlayerPrefs解析


1. 前言

PlayerPrefs是Unity内置的一个静态类,可以用于存储一些简单的数据类型:int ,string ,float。可以用它来做成计分板这类需要可持续化存储的小地方。

2. 存储位置

  • Mac OS X:存储在~/Library/PlayerPrefs文件夹,名为unity.[company name].[product name].plist,这里company和product名是在project Setting中设置的
  • windows:playerPrefs被存储在注册的HKCU\Software[company name][product name]键下,这里company和product名是在project setting中设置的。
  • Android:数据存储(持久化)在设备上。数据保存在SharedPreferences中。/data/data/包名/shared_prefs/pkg-name.xml
  • IOS:/Library/Preferences/[应用ID].plist

3. 优缺点

  • 优点:
  • 简单易用:PlayerPrefs提供了易于使用的API,使得存储和读取数据变得简单。
  • 持久化存储:PlayerPrefs可以持久化存储玩家的数据,即使应用程序关闭后也可以在下次启动时恢复数据。
  • 跨平台支持:PlayerPrefs在不同平台上的存储位置不同,但都提供了统一的API,使得跨平台开发变得更加容易。
  • 缺点:
  • 数据类型限制:PlayerPrefs只能存储字符串、整数、浮点数和布尔值等基本数据类型,对于复杂的数据结构需要自行处理。
  • 不适合大量数据的存储:PlayerPrefs不适合存储大量数据,因为所有的数据都会被存储在同一个文件中,可能会导致读写速度变慢。
  • 不安全:PlayerPrefs存储的数据可以被其他玩家或者恶意软件修改,因此不适合存储敏感信息。
  • 重复工作量多
  • 程序崩溃,数据无法保存
  • Key值同名,数据会被覆盖

3. 使用方法

  • SetInt(string key, int value):保存整型数据;
  • GetInt(string key, int defaultValue):读取整形数据;
  • SetFloat(string key, float value):保存浮点型数据;
  • GetFlost(string key, float defaultValue):读取浮点型数据;
  • SetString(string key, string value):保存字符串型数据;
  • GetString(string key, string defaultValue):读取字符串型数据;
  • PlayerPrefs.DeleteKey (key : string):删除指定数据;
  • PlayerPrefs.DeleteAll() :删除全部键 ;
  • PlayerPrefs.HasKey (key : string):判断数据是否存在的方法;
  • PlayerPrefs.Save():保存,避免崩溃数据未保存;
//存储整型数据
PlayerPrefs.SetInt("score",99); 
//存储浮点型数据
PlayerPrefs.SetFloat("level",1.11f); 
//存储字符串数据
PlayerPrefs.SetString("name","张三");
//取出key为"score"的整型数据
int intVal = PlayerPrefs.GetInt("score"); 
//取出key为"level"的浮点型数据
float floatVal = PlayerPrefs.GetFloat("level"); 
//获取key为"name"的字符串数据
string strVal = PlayerPrefs.GetString("name");
//删除所有存储数据
PlayerPrefs.DeleteAll();
//删除key为"score"的数据
PlayerPrefs.DeleteKey("score");
//查找是否存在key为"score"的数据
bool exist = PlayerPrefs.HasKey("score")
相关文章
|
1月前
|
安全 Java 数据库连接
jdbc解析excel文件,批量插入数据至库中
jdbc解析excel文件,批量插入数据至库中
21 0
|
1月前
|
XML 前端开发 数据格式
请描述如何使用`BeautifulSoup`或其他类似的库来解析 HTML 或 XML 数据。
【2月更文挑战第22天】【2月更文挑战第67篇】请描述如何使用`BeautifulSoup`或其他类似的库来解析 HTML 或 XML 数据。
|
1月前
|
JSON 数据格式
第三方系统或者工具通过 HTTP 请求发送给 ABAP 系统的数据,应该如何解析试读版
第三方系统或者工具通过 HTTP 请求发送给 ABAP 系统的数据,应该如何解析试读版
27 0
|
16天前
|
存储 JSON JavaScript
「Python系列」Python JSON数据解析
在Python中解析JSON数据通常使用`json`模块。`json`模块提供了将JSON格式的数据转换为Python对象(如列表、字典等)以及将Python对象转换为JSON格式的数据的方法。
33 0
|
1月前
|
安全 Java 数据库连接
jdbc实现批量给多个表中更新数据(解析Excel表数据插入到数据库中)
jdbc实现批量给多个表中更新数据(解析Excel表数据插入到数据库中)
154 0
|
1月前
|
存储 JSON NoSQL
Redis与Python的完美结合:实现高效数据交互和应用场景全解析
Redis与Python的完美结合:实现高效数据交互和应用场景全解析
115 0
|
1月前
|
存储 数据处理 数据格式
Python中导入Excel数据:全面解析与实践
Python中导入Excel数据:全面解析与实践
42 0
|
1月前
|
存储 运维 安全
深度解析HBR混合云备份:实现数据灾备的最佳实践
深度解析HBR混合云备份:实现数据灾备的最佳实践
|
1月前
|
分布式计算 NoSQL 大数据
探索数据宇宙:深入解析大数据分析与管理技术
探索数据宇宙:深入解析大数据分析与管理技术
56 1
|
1月前
|
数据采集 存储 监控
Python爬虫实战:利用BeautifulSoup解析网页数据
在网络信息爆炸的时代,如何快速高效地获取所需数据成为许多开发者关注的焦点。本文将介绍如何使用Python中的BeautifulSoup库来解析网页数据,帮助你轻松实现数据抓取与处理的技术。

推荐镜像

更多