ps:发文章只是为了稳固自己的学习记录一下,如果有什么错误麻烦多指教

数据的存档目前学习了使用Unity里的PlayerPrefs的单个保存方式和使用Json保存

1:PlayerPrefs单个保存:

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class SaveOrLoad : MonoBehaviour
{//定义每个变量public string name;public int lever;public float coin;//获取每个变量的引用public Text nameTxt;public Text leverTxt;public Text coinTxt;//写一个加载数据的方法,把目前的值传给游戏面板void UpdateUI(){nameTxt.text = name;leverTxt.text = lever.ToString();coinTxt.text = coin.ToString();}//BUtton加载点击事件public void LoadByDate(){LoadLocalityData();UpdateUI();}public void SaveBtnData(){SaveByDate();}//playerPrefs单个保存//把数据保存到本地void SaveByDate(){PlayerPrefs.SetString("PlayerName", name);PlayerPrefs.SetInt("PlayerLever", lever);PlayerPrefs.SetFloat("PlayerCoin", coin);PlayerPrefs.Save();}//加载本地数据上传void LoadLocalityData(){name = PlayerPrefs.GetString("PlayerName");lever = PlayerPrefs.GetInt("PlayerLever");coin = PlayerPrefs.GetFloat("PlayerCoin");}}

保存本地数据:使用PlayerPrefs.SetInt(key,value)进行保存数据到本地注册表里

2:读取本地数据:使用PlayerPrefs.GetInt(key)进行读取本地数据之后再赋值给当前的变量进行一个数据读取的转化

使用Json存档:

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;[System.Serializable]
public class Data
{//存储数据的变量public string name;public int lever;public float coin;public string id;public int count;
}public class SystenObj : MonoBehaviour
{public Data data = new Data();//显示public Text nameTxt;public Text leverTxt;public Text coinTxt;public Text NameText;public Text TXT;void UpdateUI(){nameTxt.text = data.name;leverTxt.text = data.lever.ToString();coinTxt.text = data.coin.ToString();}void UpdateDate(){data.name = NameText.text;}/// <summary>/// 加载数据的事件/// </summary>public void LoadByBtn(){LoadByJson();UpdateUI();}/// <summary>/// 定一个保存到本地的事件/// </summary>public void SaveByBtn(){UpdateDate();SaveByJson();}void SaveByJson(){string json = JsonUtility.ToJson(data);Debug.Log(json);PlayerPrefs.SetString("PlayerJson", json);}void LoadByJson(){string json = PlayerPrefs.GetString("PlayerJson");data = JsonUtility.FromJson<Data>(json);}
}

1:定义一个数据类,把需要存储的数据变量写在类里,这里可以把这个类序列化一下[System.Serializable]可以在编辑器里看见

2:保存本地数据:使用JsonUtilty.ToJson(data),使用这个方法可以把数据转换成一个string的json类型,再使用PlayerPrefs.SetString(key,value),把数据存储到本地

3:

读取本地数据:使用PlayerPrefs.GetString(key)读取本地数据之后,赋值给一个string类型,然后再通过JsonUtlty.FromJson(json)赋值给数据即可完成读取

以上就是使用PlayerPref的两种存储方式,单个存储和使用Json

除了使用playerprefs之外还可以使用File和json存储

Unity学习笔记第一章:数据的存档相关推荐

  1. 《Go语言圣经》学习笔记 第一章 Go语言入门

    Go语言圣经学习笔记 第一章 Go语言入门 目录 Hello, World 命令行参数 查找重复的行 GIF动画 获取URL 并发获取多个URL Web服务 本章要点 注:学习<Go语言圣经&g ...

  2. 小吴的《机器学习 周志华》学习笔记 第一章 绪论

    小吴的<机器学习 周志华>学习笔记 第一章 绪论 近一年时间接触到不少机器学习的知识,虽然断断续续学了一些,总感觉还没有入门(只学会了疯狂调包).因此,最近开始系统学习Machine Le ...

  3. 计算机网络学习笔记---第一章

    计算机网络学习笔记 第一章 文章目录 计算机网络学习笔记 第一章 前言 一.计算机网络的概念 (一)计算机网络的功能 1.数据通信(连通性) 2.资源共享(硬件 软件 数据) 3.分布式处理 (Had ...

  4. PhalAPI学习笔记 ——— 第一章自定义HelloWorld接口

    PhalAPI学习笔记 --- 第一章自定义HelloWorld接口 前言 自定义接口 项目实例 结果 分布解析 结束语 前言 公司业务需要转学PHP,而PHP中一个功能强大且生态链完整的PHP接口框 ...

  5. 编译原理(龙书)学习笔记 第一章

    编译原理(龙书)学习笔记 第一章 1.1语言处理器 解释器(interpreter) : 编译器(compiler): 一个语言处理系统 练习 1.1.1:编译器和解释器之间的区别 1.1.2:相对优 ...

  6. 机器人导论(第四版)学习笔记——第一章

    机器人学导论(第四版)学习笔记--第一章 1. 概述 1.1 背景 1.2 操作臂力学和控制 1.3 符号 1. 概述 1.1 背景 工业自动化的发展带来了工业机器人的高速发展.本书聚焦机械臂的力学和 ...

  7. [go学习笔记.第一章] go可以做什么

    go可以做什么,go有以下三大学习方向: Golang的应用领域 1.区块链应用 区块链技术,简称BT(Blockchain technology),也被称之为分布式账本技术,是一种互联网数据库技术, ...

  8. Kotlin学习笔记 第一章开始 第二章 基础

    参考链接 Kotlin官方文档 https://kotlinlang.org/docs/home.html 本系列为参考Kotlin中文文档 https://download.csdn.net/dow ...

  9. 《谁说菜鸟不会数据分析》学习笔记 第一章总览 第二章数据分析思路

    网上的信息太琐碎了,根本没搞懂什么是数据分析方法什么是数据分析方法论,所以找了一本比较简单的书来系统学习一下,本来打算粗略看完,但是觉得这本书知识还是不错的,所以决定在未来一周把这本书用心学一下. 这 ...

最新文章

  1. android 入门-工序
  2. 局域网常用的DOS命令查IP
  3. unity 使用tile_如何使用Tile从网上查找电话
  4. 网络对抗技术作业一 201421410031
  5. 目前最细致清晰的NSDictionary以及NSMutableDictionary用法总结(转)
  6. [Chrome]查看内存使用命令
  7. WORD常用版式保存为模板?
  8. JavaScript实现继承的方式
  9. ASP.NET缓存 Cache
  10. 华量杯-股票预测, keras+LSTM
  11. HashMap 的底层源码分析
  12. 类成员函数可以返回该类的实例吗_关于类的理解
  13. oracle查看脚本,oracle 查看表空间的脚本
  14. Git SSL公钥密钥生成
  15. C++和VC++学习方法
  16. 关于Hilbert矩阵的几道编程题
  17. linux 运行有道词典,ubuntu安装有道词典的教程详解
  18. VJ 1115 火星人
  19. python实现简单的多人聊天功能
  20. java实现处理无限层级树形结构

热门文章

  1. CF虚拟机提示无法登陆怎么解决, 虚拟机过检测代码 。
  2. 全球及中国动态力学分析流变仪行业行业发展战略与投资规划分析报告2022-2028年
  3. 使用腾讯云盲水印服务进行图片水印添加和提取的一个Python Demo
  4. Tutorial教程:利用神经网络识别骰子点数(1)
  5. 2020年图灵奖Jeffrey和Alfred人物简介
  6. 管理学十一(选人、用人、优秀员工特征与避免流失)
  7. ubuntu 安装 pygame 很好玩的东西
  8. [附源码]Python计算机毕业设计坝上长尾鸡养殖管理系统
  9. 期权套利组合 matlab,商品期权常见的组合套利策略(中)
  10. WinterBoard中Info.plist的设置-翻译