LINQ到文件/目录

本文关键字:目录 文件 LINQ | 更新日期: 2023-09-27 17:50:11

如何使用LINQ在特定目录中找到特定文件并返回true,如果它存在?

LINQ到文件/目录

为什么要使用LINQ呢?这就是你需要的:

string filePath = Path.Combine(directory, fileName);
return File.Exists(filePath);

你可以这样做:

var fileExists = new DirectoryInfo("directoryPath").GetFiles("filename.ext").Any();

但是如果你已经知道文件的路径,你可以只使用这个:

var fileExists = File.Exists("filePath");
var doesExist = new DirectoryInfo(folder).GetFiles(fileName, SearchOption.AllDirectories).Any();

如果你喜欢这样的东西,你也可以考虑FluentPath。它是一个流畅的包装系统。我不久前看到的。以下是该网站的一个示例:

Path.Get(args.Length != 0 ? args[0] : ".")
    .Files(
        p => new[] {
            ".avi", ".m4v", ".wmv",
            ".mp4", ".dvr-ms", ".mpg", ".mkv"
        }.Contains(p.Extension))
    .CreateDirectories(
        p => p.Parent()
              .Combine(p.FileNameWithoutExtension))
    .End()
    .Move(
        p => p.Parent()
              .Combine(p.FileNameWithoutExtension)
              .Combine(p.FileName));