我编写此代码以清空一些我经常删除的文件,例如 Windows 中的 temp 和 MSN cahes 文件。
代码1
我可以添加新路径以轻松应用 DeleteContains 方法我只需将路径添加到列表中
代码2
不允许我添加我想要的路径,我必须为每个路径创建新的字符串数组和一个新的循环
无论如何要使用code1删除文件夹的包含而不是文件夹及其包含?
在code1中的foreach中的任何工作都可以作为code2工作?
因为某些文件夹可以被删除或删除它们会导致某些应用程序出现问题,并且这些应用程序将无法再次运行
"C:\Users\user\AppData\Local\Temp"
而其他文件夹可以删除它没有问题,如 MSN 兑现
"C:\Users\user\AppData\Local\Microsoft\Windows Live\Contacts"
代码1
private void Clear_Click(object sender, EventArgs e)
{
List<DirectoryInfo> FolderToClear = new List<DirectoryInfo>();
// here is a list of files I want to delete
FolderToClear.Add(new DirectoryInfo("path1"));
FolderToClear.Add(new DirectoryInfo("path2"));
FolderToClear.Add(new DirectoryInfo("path3"));
FolderToClear.Add(new DirectoryInfo("path4"));
foreach (DirectoryInfo directory in FolderToClear)
{
directory.Delete(true);
}
}
代码2
private void DeleteContents(string Path)
{
string[] DirectoryList = Directory.GetDirectories(Path1);
string[] FileList = Directory.GetFiles(Path1);
foreach (string xin FileList)
{
File.Delete(x);
}
foreach ( string x in DirectoryList)
{
Directory.Delete(x, true);
}
}