以下比較兩個文件夾並刪除兩個文件夾中存在的文件。比較兩個文件夾並刪除C#中兩個文件夾中都不存在的文件
var common = from f1 in Directory.EnumerateFiles(targetDir, "*.*", SearchOption.AllDirectories)
join f2 in Directory.EnumerateFiles(sourceDir, "*.*", SearchOption.AllDirectories)
on Path.GetFileName(f1) equals Path.GetFileName(f2)
select f1;
foreach (string file in common)
{
File.Delete(file);
}
如何修改它刪除存在於我的TARGETDIR沒有在我的sourceDir存在的文件?
問題是不明確的。你的意思是你想刪除在兩個文件夾中具有相同名稱但不是相同內容的文件嗎? – Marshall777
爲什麼我們需要比較這兩個文件夾中是否不存在? – Gun
您發佈的代碼將向控制檯寫出列表1中的文件名,而不是列表2中的文件名。任何地方都會被刪除 - 特別是不是同時存在的文件....這很混亂.... –