C#刪除和清空資料夾的程式
阿新 • • 發佈:2019-01-27
/// <summary>
/// 清空指定的資料夾,但不刪除資料夾
/// </summary>
/// <param name="dir"></param>
public static void DeleteFolder(string dir)
{
foreach (string d in Directory.GetFileSystemEntries(dir))
{
if (File.Exists(d))
{
FileInfo fi = new FileInfo(d);
if (fi.Attributes.ToString().IndexOf("ReadOnly") != -1)
fi.Attributes = FileAttributes.Normal;
File.Delete(d);//直接刪除其中的檔案
}
else
{
DirectoryInfo d1 = new DirectoryInfo(d);
if (d1.GetFiles().Length != 0)
{
DeleteFolder(d1.FullName);////遞迴刪除子資料夾
}
Directory.Delete(d);
}
}
}
/// <summary>
/// 刪除資料夾及其內容
/// </summary>
/// <param name="dir"></param>
public static void DeleteFolder1(string dir)
{
foreach (string d in Directory.GetFileSystemEntries(dir))
{
if (File.Exists(d))
{
FileInfo fi = new FileInfo(d);
if (fi.Attributes.ToString().IndexOf("ReadOnly") != -1)
fi.Attributes = FileAttributes.Normal;
File.Delete(d);//直接刪除其中的檔案
}
else
DeleteFolder(d);////遞迴刪除子資料夾
Directory.Delete(d);
}
}
/// 清空指定的資料夾,但不刪除資料夾
/// </summary>
/// <param name="dir"></param>
public static void DeleteFolder(string dir)
{
foreach (string d in Directory.GetFileSystemEntries(dir))
{
if (File.Exists(d))
{
FileInfo fi = new FileInfo(d);
if (fi.Attributes.ToString().IndexOf("ReadOnly") != -1)
fi.Attributes = FileAttributes.Normal;
File.Delete(d);//直接刪除其中的檔案
}
else
{
DirectoryInfo d1 = new DirectoryInfo(d);
if (d1.GetFiles().Length != 0)
{
DeleteFolder(d1.FullName);////遞迴刪除子資料夾
}
Directory.Delete(d);
}
}
}
/// <summary>
/// 刪除資料夾及其內容
/// </summary>
/// <param name="dir"></param>
public static void DeleteFolder1(string dir)
{
foreach (string d in Directory.GetFileSystemEntries(dir))
{
if (File.Exists(d))
{
FileInfo fi = new FileInfo(d);
if (fi.Attributes.ToString().IndexOf("ReadOnly") != -1)
fi.Attributes = FileAttributes.Normal;
File.Delete(d);//直接刪除其中的檔案
}
else
DeleteFolder(d);////遞迴刪除子資料夾
Directory.Delete(d);
}
}