一、PlayerPrefs是什么?
PlayerPrefs是Unity3d提供了一个用于数据本地持久化保存与读取的类。工作原理十分简单,就是以key-value的形式将数据保存在本地,然后在代码中可以写入、读取、更新数据。
二、PlayerPrefs有什么用?
可用于存储一些非关键性的数据,尤其在没有服务器的单机游戏中,游戏存档、分数排名等都需要用到数据存储,可以使用PlayerPrefs轻松实现数据存储。
三、PlayerPrefs如何用?
- 存储数据:
//存储整型数据
PlayerPrefs.SetInt("intKey",999);
//存储浮点型数据
PlayerPrefs.SetFloat("floatKey",1.11f);
//存储字符串数据
PlayerPrefs.SetString("strKey","I am Plane");
- 取出数据:
//取出key为"intKey"的整型数据
int intVal = PlayerPrefs.GetInt("intKey");
//取出key为"floatKey"的浮点型数据
float floatVal = PlayerPrefs.GetFloat("floatKey");
//获取key为"strKey"的字符串数据
string strVal = PlayerPrefs.GetString("strKey");
- 删除数据与查数据:
//删除所有存储数据
PlayerPrefs.DeleteAll();
//删除key为"score"的数据
PlayerPrefs.DeleteKey("score");
//查找是否存在key为"score"的数据
bool exist = PlayerPrefs.HasKey("score")
- 注意事项:
- 数据以键值对的形式存储,可以看做一个字典。
- 数据通过键名来读取,当值不存在时,返回默认值。
四、PlayerPrefs数据存在哪里?
- 在Mac OS X平台下,存储在~/Library/Preferences文件夹,名为unity.[company name].[product name].plist。
- 在Windows平台下,存储在注册表的 HKEY_CURRENT_USER\Software[company name][product name]键下。