首页 > 其他分享 >持久化数据

持久化数据

时间:2022-08-14 17:48:44浏览次数:39  
标签:持久 string mat AssetDatabase 参数 PlayerPrefs 数据 Assets

使用PlayerPrefs

PlayerPrefs.SetString(str:sring, str1:string);//保存字符串,以键值对的形式存储数据
PlayerPrefs.SetInt(str:string, num:int);//保存整型
PlayerPrefs.SetFloat(str:string, num:float);//保存浮点型
PlayerPrefs.DeleteAll();//将所有的键值对都删除
PlayerPref.DeleteKey();//删除某一项数据,参数为数据名称
HashKey();//判断是否有这个数据,参数为数据名称

PlayerPrefs.GetString(str:sring);//得到字符串,以键值对的形式存储数据
PlayerPrefs.GetInt(str:string);//得到整型
PlayerPrefs.GetFloat(str:string);//得到浮点型

创建文件

    void CreateFile(string path, string name, string info)
    {
        StreamWriter sw;
        FileInfo t = new FileInfo(path + "//" + name);
        if (!t.Exists)
            sw = t.CreateText();//不存在文件创建文件
        else sw = t.AppendText();//文件存在的话打开文件
        sw.WriteLine(info);//以行的形式写入文件
        sw.Close();//关闭流
        sw.Dispose();//销毁流
    }

读取文件

    ArrayList LoadFile(string path, string name)
    {
        StreamReader sr = null;
        try
        {
            sr = File.OpenText(path + "/" +name);
        }catch(Exception e)//没有找到文件
        {
            return null;
        }
        string line;
        ArrayList arrayList = new ArrayList();
        while((line = sr.ReadLine()) != null)
        {
            arrayList.Add(line);//逐行读取并将内容存入数组链表中
        }
        sr.Close();
        sr.Dispose();
        return arrayList;
    }

从Assert中加载数据

需要引入UnityEditor

AssetDatabase.LoadAssetAtPath("Assets/texture/C#1.png", typeof(Texture2D));//第一个参数是路径,第二个参数是文件的类型

在Assert中创建文件

需要引入UnityEditor

 AssetDatabase.CreateAsset(mat, "Assets/mat.mat");//第一个参数是要保存的数据,第二个是要保存的路径。

截图

需要引用UnityEngine.SceneManagement

ScreenCapture.CaptureScreenshot(Application.dataPath + "//p1.png");//参数是存储路径,需要自己自定义后缀

创建文件夹

需要引入UnityEditor

AssetDatabase.CreateFolder("Assets",floder);//第一个参数是创建位置,第二个是文件名称

复制和移动文件

AssetDatabase.CopyAsset("Assets/folderName0/mat.mat", "Assets/folderName1/mat1.mat");//第一个参数是要复制的资源的路径,第二个参数是复制后资源的路径
AssetDatabase.MoveAsset("Assets/folderName1/mat1.mat", "Assets/folderName0/mat0.mat");//第一个参数是要移动的资源的路径,第二个参数是移动后资源的路径

删除和刷新视图

AssetDatabase.DeleteAsset("Assets/folderName0/mat0.mat");//删除文件
AssetDatabase.Refresh();//刷新资源视图,相当于鼠标右键刷新

打开网页

Application.OpenURL("https://www.bilibili.com/");//参数是URL的string形式

切换场景和获取场景名称

需要引用UnityEngine.SceneManagement

Scene scene = SceneManager.GetActiveScene();
GUILayout.Label("当前场景的名称为:" + scene.name);
SceneManager.LoadScene("SampleScene1");//加载场景,参数为场景名称

标签:持久,string,mat,AssetDatabase,参数,PlayerPrefs,数据,Assets
From: https://www.cnblogs.com/jyhlearning/p/16585829.html

相关文章

  • 关系型数据库与非关系型数据库
    关系型数据库关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录。主流的关系型数据库包括Oracle、MySQL、SQLServer、MicrosoftAcces......
  • python 解析from-data数据
    最近在自己尝试使用python基于wsgiref写小型后端框架时需要从前端上传文件到后台,那么要在前端表单中需要添加enctype="multipart/form-data"这样后台拿到的数据不能使用......
  • Django中读取数据的一些学习
    Django中读取数据的一些学习关于元组的读取​ 当我们在写数据库架构时,我们需要考虑数据库内存,而经常的操作是,比如对于gender,固定值一般为男、女,但是一直写男女中文字符过......
  • 抽取基本JDBC中的基本操作与数据连接池
     1.JDBCDBC(JavaDataBaseConnectivity):Java数据库连接技术:具体讲就是通过Java连接广泛的数据库,并对表中数据执行增、删、改、查等操作的技术。JDBC是数据库与Java代......
  • 使用python转换 smRNA-Seq的测序数据
     001、方法1root@PC1:/home/test3#lsa.txttest.pyroot@PC1:/home/test3#cata.txt##测试文件ACTGCCCTAAGTGCTCCTTCTGGC2ATAAGGTGCATCTAGTGCAGATA......
  • 【爬虫实例3】异步爬取大量数据
    1、导入模块importrequestsimportcsvfromconcurrent.futuresimportThreadPoolExecutor2、先获取第一个页面的内容分析得到该页面的数据是从getPriceData.html页......
  • python 中实现将三元组数据转换为矩阵形式
     001、root@PC1:/home/test3#lsa.txttest.pyroot@PC1:/home/test3#cattest.py##测试程序#!/usr/bin/pythonin_file=open("a.txt","r")lin......
  • PySpark 大数据处理
    本文主要介绍Spark的一些基本算子,PySpark及SparkSQL的使用方法。虽然我从2014年就开始接触Spark,但几年来一直没有真正地学以致用,时间一久便忘了如何使用,直到在工作中用......
  • 华测RTK采集的GPX数据,如何带属性转出GIS常用格式并分类加载管理?
    0.序部分自然资源和规划局经常性的基于华测中绘RTK设备采集点位、轨迹等相关数据。比如需要保护的古树、古建、古道路信息等。后续一旦需要对这些古物进行改造或者方案设......
  • 2、kalman滤波器------数学基础_数据融合_协方差矩阵
    参考内容:B站的DR_CAN的卡尔曼滤波器视频本节内容:1、数据融合2、协方差矩阵3、状态空间方程4、观测器1、数据融合   假设两个秤对同一个物体进......