关于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 () {
    
    }
}

优质内容筛选与推荐>>
1、适应不同显示器
2、二分查找
3、Block里用self造成循环引用
4、[入门级知识]Linux下软件安装详解
5、【转】谈.Net委托与线程——创建无阻塞的异步调用


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号