C# 删除特定文件夹的文件
我用它来删除文件夹的内容,这应该取决于计算机的用户名&我已经提供了管理员权限C# 删除特定文件夹的文件,c#,.net,C#,.net,我用它来删除文件夹的内容,这应该取决于计算机的用户名&我已经提供了管理员权限 但当任何文件不删除时,它将停止在该文件上工作。我希望此过程完成您必须在文件删除语句周围添加try/catch块,这样即使出现异常,循环也会继续。我建议您在调用delete时记录引发异常的文件列表。如果其中一个文件无法删除,则调用file.delete()将引发异常 如果要处理它,必须将其包装在try/catch中,如下所示: String userName = System.Security.Principal.Wi
但当任何文件不删除时,它将停止在该文件上工作。我希望此过程完成您必须在文件删除语句周围添加try/catch块,这样即使出现异常,循环也会继续。我建议您在调用delete时记录引发异常的文件列表。如果其中一个文件无法删除,则调用
file.delete()
将引发异常
如果要处理它,必须将其包装在try/catch中,如下所示:
String userName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
String dr = @"C:\Users\" + userName + @"\AppData\temp";
DirectoryInfo dir = new DirectoryInfo(@dr);
foreach (FileInfo file in dir.GetFiles())
{
file.Delete();
}
foreach (DirectoryInfo dire in dir.GetDirectories())
{
dire.Delete(true);
}
此外,我建议您更好地使用字符串,而不是连接字符串
foreach (FileInfo file in dir.GetFiles())
{
try
{
file.Delete();
}
catch (IOException exception)
{
// Here you should log the exception.Message
}
}
String userName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
String dr = @"C:\Users\" + userName + @"\AppData\temp";
DirectoryInfo dir = new DirectoryInfo(@dr);
foreach (FileInfo file in dir.GetFiles())
{
try
{
file.Delete();
}
catch (IOException ex)
{//Log ex.message
continue;
}
}
foreach (DirectoryInfo dire in dir.GetDirectories())
{
try
{
dire.Delete();
}
catch (IOException ex)
{ //Log ex.message
continue;
}
}