关于Unity中的本地存储

时间:2023-03-09 02:48:24
关于Unity中的本地存储

本地存储

在做游戏的时候,经常需要在本机存储一些数据,比如闯关类游戏要记录闯到第几关,做单机的时候要把数据保存到本地,下次启动的时候数据存在,就是把数据保存到磁盘里面或者手机的flash闪存里面。

Unity使用PlayerPrefs类实现本地存储

1: PlayerPrefs类: 游戏开发中需要存储本地数据,借助这个能够实现本地存储;
2: PlayerPrefs主要方法:
(1) SetInt/SetFloat, SetString: key-->value  存整数/存浮点/存字符串
(2) GetInt/GetFloat, GetString: key-->value; 取整数/取浮点/取字符串
(3)DeleteKey/DeleteAll 删除一个key/所有数据;
(4) HasKey 判断一个Key是否存在;
(5) Save 保存数据;

本地存储实例

1.创建Unity工程目录

2.创建一个立方体Cube

3.创建一个脚本local_storage挂载到Cube节点下

4.打开local_storage

using UnityEngine;
using System.Collections; public class local_storage : MonoBehaviour { // Use this for initialization
void Start () {
//设定数据----不是代码
// name: 小红 // 字符串
// age: 12 // 整数
// sex: 1 // 性别
// hight: 1.62 // float //存数据
/*PlayerPrefs.SetString("name", "小红");
PlayerPrefs.SetInt("age", 12);
PlayerPrefs.SetInt("sex", 1);
PlayerPrefs.SetFloat("hight", 1.62f);
PlayerPrefs.Save();*/ //取数据
// Debug.Log(PlayerPrefs.GetString("name"));
// Debug.Log(PlayerPrefs.GetInt("age"));
// Debug.Log(PlayerPrefs.GetInt("sex"));
// Debug.Log(PlayerPrefs.GetFloat("hight")); //查找删除
if (PlayerPrefs.HasKey("name")) {
Debug.Log("Haskey");//第一次输出这个
PlayerPrefs.DeleteKey("name");
}
else {
Debug.Log("ELSE NOT FOUND");//第二次输出这个(被第一次删除了,找不到了)
}
} // Update is called once per frame
void Update () { }
}