遍历一个文件夹下的所有txt文件,读取查找含有关键字的内容,谁帮提供一下程序谢谢

解决方案 »

  1.   

    DirectoryInfo dir = new DirectoryInfo(文件夹路径); 
    FileInfo[] files = dir.GetFiles(); 
    foreach (FileInfo info in files) 

    if (info.Extension == ".txt" 

    // 

    }
      

  2.   

    DirectoryInfo dir = new DirectoryInfo(文件夹路径); 
    FileInfo[] files = dir.GetFiles(); 
    foreach (FileInfo info in files) 

    if (info.Extension.ToLower() == ".txt")

    string fileContent = File.ReadAllText(info.FullName);
    然后在fileContent 查找

      

  3.   

    private string GetFileNames(string path,string keyword)
    {
    if(!Directory.Exists(path)) return null;
    string[] fis=Directory.GetFiles(path,"*.txt");
    string result=string.Empty;
    foreach(string s in fis)
    {
    FileInfo fi=new FileInfo(s);
    if(fi.Name.IndexOf(keyword)>-1) result+=fi.Name+"\r\n";
    }
    return result;
    }
      

  4.   

    DirectoryInfo dir = new DirectoryInfo(文件夹路径); 
    FileInfo[] files = dir.GetFiles(); 
    foreach (FileInfo info in files) 

    if (info.Extension == ".txt" 
    {
    //找出这些文件了,读文件还不会吗?你可以一行行的读,判断有关键字的,就取出来。我也不知道你到底想怎样“读取查找含有关键字的内容”,这个内容是什么呢?
    你看看帮助文档的fileinfo类吧。

    }
      

  5.   

    using (StreamReader reader = new StreamReader(info.FullName))
    {
     string tmp = null;
     List<CriminalReportEntity> list = new List<CriminalReportEntity>();
     while ((tmp = reader.ReadLine()) != null)
        {
          if(tmp.IndexOf(keyword)>-1)
             {
               //这行有关键字。
              }
        }
    }
      

  6.   

    using (StreamReader reader = new StreamReader(info.FullName)) 

    string tmp = null; 
    while ((tmp = reader.ReadLine()) != null) 
        { 
          if(tmp.IndexOf(keyword)>-1) 
            { 
              //这行有关键字。 
              } 
        } 
    }
      

  7.   

    private string GetFileNames(string path,string keyword)
    {
    if(!Directory.Exists(path)) return null;
    string[] fis=Directory.GetFiles(path,"*.txt");
    string result=string.Empty;
    foreach(string s in fis)
    {
    FileInfo fi=new FileInfo(s);
    StreamReader sr=new StreamReader(s,Encoding.Default);
    string text=sr.ReadToEnd();
    if(text.IndexOf(keyword)>-1) result+=fi.Name+"\r\n";
    }
    return result;
    }
      

  8.   

    读写文件建议使用using(){}。