我有一个有多个子文件夹的文件夹.每个子文件夹中都包含许多.dot和.txt文件.
在C#.NET中是否有一个简单的解决方案,它将迭代每个文件并检查该文件的内容中是否有关键短语或关键字?
Document Name Keyword1 Keyword2 Keyword3 ...
test.dot Y N Y
Run Code Online (Sandbox Code Playgroud)
总结一下:
提前致谢
小智 5
你想要的是递归地迭代目录中的文件(也许是它的子目录).
因此,您的步骤是使用.NET中的Getfiles()将eeach文件循环到指定目录中.然后,如果你遇到一个目录循环它再次.
使用此代码示例可以轻松完成此操作:
public static IEnumerable<string> GetFiles(string path)
{
foreach (string s in Directory.GetFiles(path, "*.extension_here"))
{
yield return s;
}
foreach (string s in Directory.GetDirectories(path))
{
foreach (string s1 in GetFiles(s))
{
yield return s1;
}
}
}
Run Code Online (Sandbox Code Playgroud)
在.NET中的目录中迭代throug文件的更深入的看法位于:
http://blogs.msdn.com/b/brada/archive/2004/03/04/84069.aspx
然后你使用String中的IndexOf方法来检查你的关键字是否在文件中(我不鼓励使用ReadAllText,如果你的文件大5 MB,那么你的字符串也是如此.逐行排列的内存会更少)
| 归档时间: |
|
| 查看次数: |
2360 次 |
| 最近记录: |