在做项目的时候要求创建新的文件夹,如果有重复的就删掉原来的文件夹重新创建。但是DirectoryInfo.Delete()只能删除空文件夹,所以写了一段代码。先删除文件夹下的文件再去删除空的文件夹,代码段如下:
void deleteDirs(DirectoryInfo dirs)
{
if (dirs == null || (!dirs.Exists))
{
return;
}
DirectoryInfo[] subDir = dirs.GetDirectories();
if (subDir != null)
{
for (int i = 0; i < subDir.Length; i++)
{
if (subDir[i] != null)
{
deleteDirs(subDir[i]);
}
}
subDir = null;
}
FileInfo[] files = dirs.GetFiles();
if (files != null)
{
for (int i = 0; i < files.Length; i++)
{
if (files[i] != null)
{
Debug.Log("删除文件:" + files[i].FullName + "__over");
files[i].Delete();
files[i] = null;
}
}
files = null;
}
Debug.Log("删除文件夹:" + dirs.FullName + "__over");
dirs.Delete();
}