使用PlayerPrefs(玩家偏好)这个类,方便的实现数据的存取
存储位置
位于注册表中,计算机\HKEY_CURRENT_USER\Software\[公司名称]\[项目名称]
这里我的公司名称是DefaultCompany,我的项目名称是3DGameKit
key_music,key_sound,MouseSpeed里存储的就是我的三个数据
保存数据
public static void SetInt (string key, int value);
public static void SetFloat (string key, float value);
public static void SetString (string key, string value);
参数:
- key:要保存数据的关键字,用于标识不同的数据,需要保证关键字唯一
- value:数据
读取数据
public static int GetInt (string key);
public static int GetInt (string key, int defaultValue);
public static float GetFloat (string key);
public static float GetFloat (string key, float defaultValue);
public static string GetString (string key);
public static string GetString (string key, string defaultValue);
参数:
- key:要读取数据的关键字
- defaultValue:默认值,如果给定的关键字不存在,则返回默认值。否则,返回关键字对应的数据
写入磁盘
默认情况下,Unity会在 OnApplicationQuit() 执行时(应用程序退出时),将数据写入磁盘
如果想在游戏运行中就写入磁盘,防止游戏崩溃等意外发生时,数据无法保存的问题,那么就需要使用以下函数
public static void Save ();
此函数会将所有修改的数据写入磁盘
删除数据
public static void DeleteKey (string key);
参数:
- key:要删除数据的关键字
清空数据
public static void DeleteAll ();
该函数将删除所有保存的数据,请谨慎使用,此外,还可以在Unity设置中清空