持久化数据
使用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");//加载场景,参数为场景名称
posted on 2022-08-14 17:25 jyhlearning 阅读(22) 评论(0) 编辑 收藏 举报