3
我有名單,如果文件名稱(不是路徑)在List<string>
。我必須找到不存在於目錄中的文件的List<string>
。查找文件名不存在的目錄中
現在我正在逐個迭代文件,並檢查它們中的每一個文件夾中的所有文件。
是否有任何LINQ的方式同一件事?
我有名單,如果文件名稱(不是路徑)在List<string>
。我必須找到不存在於目錄中的文件的List<string>
。查找文件名不存在的目錄中
現在我正在逐個迭代文件,並檢查它們中的每一個文件夾中的所有文件。
是否有任何LINQ的方式同一件事?
取決於你有多少名的列表中有(有多少文件在目的地),你可能會發現,迭代的方法仍然是最有效的(但有一些LINQ增強功能):
var missingFiles = names.Where(x => !File.Exists(x));
您可以使用Enumerable.Except像:
List<string> compareList = new List<string>();
//.... items in the list
DirectoryInfo di = new DirectoryInfo("C:\\");
var fileArray = di.GetFiles().Select(r => r.Name).ToArray();
var filesNotPresent = compareList.Except(fileArray);