Unity3d提供了一个用于本地持久化保存与读取的类——PlayerPrefs。工作原理非常简单,以键值对的形式将数据保存在文件中,然后程序可以根据这个名称取出上次保存的数值。
PlayerPrefs类支持3中数据类型的保存和读取,浮点型,整形和字符串。
对应的函数分别为:
- SetInt();保存整型数据
- GetInt();读取整形数据
- SetFloat();保存浮点型数据
- GetFlost();读取浮点型数据
- SetString();保存字符串型数据
- GetString();读取字符串型数据
简单代码如下:
//保存数据
PlayerPrefs.SetString("Name",mName);
PlayerPrefs.SetInt("Age",mAge);
PlayerPrefs.SetFloat("Grade",mGrade)
//读取数据
mName=PlayerPrefs.GetString("Name","DefaultValue");
mAge=PlayerPrefs.GetInt("Age",0);
mGrade=PlayerPrefs.GetFloat("Grade",0F);
PlayerPrefs存储数据时,其在windows的存储路径是注册表:
在启动或搜寻里打入“regedit“,开启“开启登录编程程式”。
数据存储于HKEY_CURRENT_USER->Software->CompanyName->ProjectName中。
其中的CompanyName和ProjectName可以在Unity->Edit->Project Settings->Player中查看和设置。