2016-11-29 94 views
-2

我将如何遍历不同文件的列表(在某个目录中)并跨过列表进行过滤,然后如果找到某个字符串,它将返回找到的文件它。迭代目录中的文件以查找内容

Eg: Files are '344-444.yml, 555-646.yml and 996-666.yml 
File 344-444.yml contains: 
hobby: 
- football 
- hockey 
- custom 

如果自被发现,第一个匹配找到返回的文件名,如344-444.yml

谢谢!

+0

[**此**](http://stackoverflow.com/questions/3154488/how-do-i-iterate-through-the-files-in-a-directory-in-java)可以帮助你? – Aziuth

+0

@Aziuth不完全,我希望也通过列表搜索文件的内容为我的某个字符串,然后最终返回文件名。 – Chazmondo

+0

你写了任何代码吗?你有没有搜索你想要的功能? – VGR

回答

0

您对目标的解释有点不清楚。然而,我知道在某个时候你会得到你的字符串列表(字典),你必须在特定的文件上查找每个字符串。一个好的算法是Aho-Corasick algorithm,它会给你的文件长度+出现次数+字典长度的线性复杂度。如果字典的大小很大,这对于一次查找一个字符串来说是一个巨大的时间增益。

相关问题