Unity学习----【数据持久化】二进制存储(三)--文件夹操作
·来源于唐老狮的视频教学,仅作记录和感悟记录,方便日后复习或者查找
一.什么是文件夹操作
就是用代码对文件夹进行增删改查等基础操作
二.C#提供给我们的文件夹操作公共类
类名:Directory
命名空间:using System.IO
1.判断文件夹是否存在
//1.判断文件夹是否存在
if( Directory.Exists(Application.dataPath + "/数据持久化四"))
{print("存在文件夹");
}
else
{print("文件夹不存在");
}
2.创建文件夹
//2.创建文件夹DirectoryInfo info = Directory.CreateDirectory(Application.dataPath + "/数据持久化四");
①会返回一个DirectoryInfo的类
3.删除文件夹
//3.删除文件夹
//参数一:路径
//参数二:是否删除非空目录,如果为true,将删除整个目录,如果是false,仅当该目录为空时才可删除
Directory.Delete(Application.dataPath + "/数据持久化四");
①默认为false,如果文件夹里有文件获取子文件夹的话,删除的时候就会报错。
4.查找文件夹和文件
//4.查找文件夹和文件
//得到指定路径下所有文件夹名
string[] strs = Directory.GetDirectories(Application.dataPath);
for (int i = 0; i < strs.Length; i++)
{print(strs[i]);
}//得到指定路径下所有文件名
strs = Directory.GetFiles(Application.dataPath);
for (int i = 0; i < strs.Length; i++)
{print(strs[i]);
}
①.GetDirectories是获取文件夹们
②.GetFiles是获取文件们
5.移动文件夹
//5.移动文件夹
//如果第二个参数所在的路径 已经存在了一个同名文件夹 那么会报错
//移动会把文件夹中的所有内容一起移到新的路径
Directory.Move(Application.dataPath + "/数据持久化四", Application.dataPath + "/123123123");
①第一个参数是要移动的文件夹,第二个参数是要移动到哪里。移动到的文件夹中不能有和被移动的文件夹同名的文件夹,否则会报错
三.DirectoryInfo和FileInfo
DirectoryInfo目录信息类
我们可以通过它获取文件夹的更多信息
它主要出现在两个地方
1.创建文件夹方法的返回值
DirectoryInfo dInfo = Directory.CreateDirectory(Application.dataPath + "/数据持久化123");//全路径print(dInfo.FullName);//文件名print(dInfo.Name);
①直接获取创建的这个文件夹的信息。一般常用的就是全路径和文件名了
2.查找上级文件夹信息
//2.查找上级文件夹信息
dInfo = Directory.GetParent(Application.dataPath + "/数据持久化123");
//全路径
print(dInfo.FullName);
//文件名
print(dInfo.Name);
①这里是得到当前文件夹的父文件夹的信息
3.重要方法
//重要方法//得到所有子文件夹的目录信息DirectoryInfo[] dInfos = dInfo.GetDirectories();//FileInfo文件信息类//我们可以通过DirectoryInfo得到该文件下的所有文件信息FileInfo[] fInfos = dInfo.GetFiles();for (int i = 0; i < fInfos.Length; i++){print("**************");print(fInfos[i].Name);//文件名print(fInfos[i].FullName);//路径print(fInfos[i].Length);//字节长度print(fInfos[i].Extension);//后缀名}
①.GetDirectories()用于得到该文件夹所有子文件夹信息
②可以遍历得到的子文件夹信息来获取里面的更详细信息
四.总结
①文件夹操作是指用代码来创建删除修改移动文件夹
②文件夹的创建和获取父文件夹都会返回一个文件夹信息类
③文件夹的删除没有指定可以删除有文件的文件夹的情况下只能删除空文件夹
④可以通过文件夹获取其子文件夹和父文件夹信息,从而快速上下检索
⑤文件夹信息类可以帮助我们快速获取当前文件夹下的文件和子文件夹的信息,以及文件夹自身的信息