我一直在做一个学校项目,有点陷入困境。我一直在尝试写这样的东西,但它不起作用。有没有什么方法可以查找文件,删除它,但不知道文件的确切路径?
var files = new List<string>();
foreach (DriveInfo d in DriveInfo.GetDrives().Where(x => x.IsReady == true))
{
files.AddRange(Directory.GetFiles(d.RootDirectory.FullName, "x.jpg", SearchOption.AllDirectories));
}
if (File.Exists(files))
{
File.Delete(files);
}
您的问题是
if (File.Exists(files))
{
File.Delete(files);
}
文件不是文件路径,而是它们的列表
你需要做
foreach(var file in files)
{
if (File.Exists(file))
{
File.Delete(file);
}
}
做同样事情的一个更简单的方法是
var files = from d in DriveInfo.GetDrives()
where d.IsReady
from f in d.RootDirectory.EnumerateFiles("x.jpg",SearchOption.AllDirectories)
select f;
foreach(var file in files)
{
if (file.Exists)
{
file.Delete();
}
}