public static void del(string dir) { if (Directory.Exists(dir)) { Util.DeleteFolder(dir); } else if (File.Exists(dir)) { File.Delete(dir); } }
public static void DeleteFolder(string dir) { if (!Directory.Exists(dir)) { return; } string[] fileSystemEntries = Directory.GetFileSystemEntries(dir); string[] array = fileSystemEntries; for (int i = 0; i < array.Length; i++) { string text = array[i]; Debug.Log(text); if (File.Exists(text)) { FileInfo fileInfo = new FileInfo(text); if (fileInfo.Attributes.ToString().IndexOf("ReadOnly") != -1) { fileInfo.Attributes = FileAttributes.Normal; } File.Delete(text); } else { DirectoryInfo directoryInfo = new DirectoryInfo(text); DirectoryInfo[] directories = directoryInfo.GetDirectories(); if (directories.Length != 0) { Util.DeleteFolder(directoryInfo.FullName); } FileInfo[] files = directoryInfo.GetFiles(); if (files.Length != 0) { Util.DeleteFolder(directoryInfo.FullName); } Directory.Delete(text); } } }
public static void MoveDirectory(string sourcePath, string destinationPath) { Util.CopyDirectory(sourcePath, destinationPath, string.Empty, string.Empty); Util.DeleteFolder(sourcePath); }