搜索目录以查找特定项目编号

时间:2017-05-04 20:52:11

标签: c# winforms visual-studio file directory

我有许多工作文件,每个工作文件都有一个属性文件夹我希望能够搜索文件并找到分配了特定编号的作业。这些数字包含在文本文件中。我该怎么做呢?

编辑: 文件结构CURRENT JOBS FOLDER =>多个工作制动Into This 在属性文件夹中,它们包含有关作业的所有信息。包括我想要搜索的职位编号。

我目前停留在搜索多个文件以查找包含我需要的作业编号的文本文件。

1 个答案:

答案 0 :(得分:1)

有一个很好的例子on MSDN可以找到每个* .txt文件,从C:\开始并以递归方式遍历每个目录,然后从每个文件中读取每行文本,查找文本“Microsoft ”。我认为它可以用来解决你的问题吗?

using System;
using System.IO;
using System.Linq;

class Program
{
    static void Main(string[] args)
    {
        try
        {
            var files = from file in Directory.EnumerateFiles(@"c:\", "*.txt", SearchOption.AllDirectories)
                        from line in File.ReadLines(file)
                        where line.Contains("Microsoft")
                        select new
                        {
                            File = file,
                            Line = line
                        };

            foreach (var f in files)
            {
                Console.WriteLine("{0}\t{1}", f.File, f.Line);
            }
            Console.WriteLine("{0} files found.", files.Count().ToString());
        }
        catch (UnauthorizedAccessException UAEx)
        {
            Console.WriteLine(UAEx.Message);
        }
        catch (PathTooLongException PathEx)
        {
            Console.WriteLine(PathEx.Message);
        }
    }
}