1.5 Unity中的数据存储 PlayerPrefs

这篇具有很好参考价值的文章主要介绍了1.5 Unity中的数据存储 PlayerPrefs。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Unity中的三种数据存储:数据存储也称为数据持久化

一、PlayerPrefs

PlayerPrefs是Unity引擎自身提供的一个用于本地持久化保存与读取的类,以键值对的形式将数据保存在文件中,然后程序可以根据关键字提取数值。

PlayerPrefs类支持3种数据类型的保存和读取:浮点型、整形、字符串型

1.5 Unity中的数据存储 PlayerPrefs,unity,xml,游戏引擎

1.保存数据

        //保存整型数据
        PlayerPrefs.SetInt("int1",123);
        //保存浮点型数据
        PlayerPrefs.SetFloat("float1",123.4f);
        //保存字符串型数据
        PlayerPrefs.SetString("string1","名字");

2.读取数据

        //读取整数型数据
        PlayerPrefs.GetInt("int1");
        //读取浮点型数据
        PlayerPrefs.GetFloat("float1");
        //读取字符串型数据
        PlayerPrefs.GetString("string1");

3.获取数据

通过Key值获取在本地持久化的数据,如果Key值不存在,那么就会返回一个默认值

        //读取整数型数据,如果key值不存在 那么就会返回一个默认值0
        PlayerPrefs.GetInt("int1",123);
        //读取浮点型数据,如果key值不存在 那么就会返回一个默认值0.0
        PlayerPrefs.GetFloat("float1",123.4f);
        //读取字符串型数据,如果key值不存在 那么就会返回一个默认值""
        PlayerPrefs.GetString("string1","名字");

4.查找是否存在该键值

PlayerPrefs.HasKey("int");

5.清除所有记录

 PlayerPrefs.DeleteAll();

6.删除其中某一条记录

PlayerPrefs.DeleteKey("int");

7.将记录写入磁盘

PlayerPrefs.Save()

8.示例

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public class PlayerPabsTest : MonoBehaviour
{
 
    // Use this for initialization
    void Start () {
        //写入姓名数据
        PlayerPrefs.SetString("姓名","张三");
        //查找是否存在键值为'姓名'的数据
        if (PlayerPrefs.HasKey("姓名"))
        {
            //读取键值为 '姓名' 的数据 并打印
            Debug.Log(PlayerPrefs.GetString("姓名"));
        }
    }
}

打印结果:

张三

9.不同平台的PlayerPrefs存储路径

  •  Mac OS X:~/Library/Preferences
  •  Windows:HKCU\Software[company name][product name]
  •  Linux:~/.config/unity3d/ [CompanyName]/ [ProductName]
  •  Windows Store Apps: %userprofile% AppData Local\Packages\[ProductPackageld]>/LocalSt ate/playerprefs.dat
  •  WebPlayer
    • Mac OS X: ~/Library/ Preferences/Unity/ WebPlayer Prefs
    • Windows: %APPDATA% Unity\WebPlayer Prefs

10.优缺点

  • 优点:可以快速便捷的处理一些数据,比XMLQ、JSON等其他方法要快的多,对于开发者来说,读写也非常简单
  • 缺点:只能对整数型、浮点型和字符串型三种类型数据进行处理,如果遇上非常庞大的一个数据量就会非常麻烦不利于管理

在开发平时的一些小项目对数据存储功能没有强的需求时,使用效果很好!
注意:PlayerPrfs不同数据,不能同名,即便是不同的数据类型文章来源地址https://www.toymoban.com/news/detail-780244.html

 

到了这里,关于1.5 Unity中的数据存储 PlayerPrefs的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity数据持久化之PlayerPrefs

    什么是数据持久化 数据持久化就是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型的统称。即将游戏数据存储到硬盘,硬盘中数据读取到游戏中,也就是传统意义上的存盘。 PlayerPrefs是什么 是 Unity 提供的可以用于存储读取玩家数据的公共类

    2024年02月19日
    浏览(47)
  • Unity PlayerPrefs 持久化数据存在哪

    在游戏开发的过程中,我们经常需要存档相关的东西,称为数据的持久化。PlayerPrefs 就是Unity提供的用于本地数据持久化保存与读取的类。 PlayerPrefs会以键值对的方式存储在本地的注册表中。 1.存储数据 2.获取数据 3.删除数据 这些数据会存储在注册表中,打开注册表就能查看

    2024年02月16日
    浏览(45)
  • Unity学习笔记--数据持久化之PlayerPrefs的使用

    PlayerPrefs是Unity游戏引擎中的一个类,用于在游戏中存储和访问玩家的偏好设置和数据。它可以用来保存玩家的游戏进度、设置选项、最高分数等信息。PlayerPrefs将数据存储在本地文件中,因此可以在游戏重新启动时保持数据的持久性。 PlayerPrefs中存储的数据存储在哪里? PC端

    2024年02月05日
    浏览(45)
  • Unity3D学习之数据持久化——PlayerPrefs

    就是保存存档和读取存档。 分为两部分,存储和读取,先看存储在看读取 PlayerPrefs 是unity提供可以存储和读取玩家数据的公共类 上面定义过 PlayerPrefs.SetInt(“myAge”,18) 后面再定义PlayerPrefs.SetFloat(“myAge”,20.2f) 后面进行读取int型 myAge时,会变成默认值0 打印结果 0 和 100 1)父

    2024年01月18日
    浏览(80)
  • 1.10 Unity中的数据存储 XML

    一、XML 1.介绍 XML是一个文档后缀名是*.xml XML是一个特殊格式的文档 XML是可扩展的标记性语言 XML是Extentsible Markup Language的缩 写 XML是由万维网联盟(W3C)创建的标记语言,用于定义编码人类和机器可以读取的文档的语法。它通过使用定义文档结构的标签以及如何存储和传输文档来

    2024年01月21日
    浏览(43)
  • Unity PlayerPrefs、JsonUtility

    Unity中有两个常用的数据存储方式:PlayerPrefs和JsonUtility。 PlayerPrefs PlayerPrefs是Unity内置的一种轻量级数据存储方式,可用于存储少量的游戏数据,如分数、解锁状态等。使用PlayerPrefs需要注意以下几点: 存储数据时,需要使用字符串作为键(key)和值(value)。 存储的值只能

    2024年02月13日
    浏览(46)
  • 深入了解Unity的PlayerPrefs类:一份详细的技术指南(五)

    在Unity游戏开发中,一个重要的需求就是管理玩家的偏好设置。有很多方法可以实现这个目标,但Unity内置的PlayerPrefs类是最简单和快速的一种。PlayerPrefs类为我们提供了一种方便的方式来存储和检索读取玩家的数据,包括游戏设置,进度等。 PlayerPrefs类是一种轻量级的,用于

    2024年02月15日
    浏览(39)
  • 【Unity】使用ScriptableObject存储数据

    在游戏开发中,有大量的配置数据需要存储,这个时候就需要ScriptableObject来存储数据了。 很多人会说我可以用json、xml、txt,excel等等 但是你们有没有想过,假设你使用的是json,那你在加载json后,还要去解析,还需要把它转换为合适的数据结构。 但是ScriptableObject就可以“免

    2024年03月09日
    浏览(88)
  • Unity——数据存储的几种方式

    PlayerPrefs适合用于 存储简单的键值对数据 存储的数据会在游戏关闭后依然保持,并且可以在不同场景之间共享,适合用于需要在游戏不同场景之间传递和保持的数据。 它利用key-value的方式将数据保存到本地,跟字典类似。然后通过代码进行保存、读取、更新操作。值得注意

    2024年02月03日
    浏览(45)
  • unity转微信小游戏数据存储

    unity程序转成微信小游戏以后 File.WriteAllText 和 File.ReadAllText由于路径问题不生效。 这个时候需要采用微信自己的存储路径来把用户信息保存下来。 private void LoadPlayerData() { #if UNITY_EDITOR || UNITY_ANDROID || UNITY_IOS if (File.Exists(filePath)) { playerDataString = File.ReadAllText(filePath); m_PlayerData

    2024年02月10日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包