我需要扫描一个特定的文件夹在Java中,并能够返回一个特定类型的文件的整数(不仅基于扩展名,而且命名约定)。例如,我想知道那里有多少JPG文件在\ src文件夹中有一个简单的整数文件名(例如,1.JPG到30.JPG)。任何人都可以将我指向正确的方向吗? Thx如何在Java中扫描文件夹?
2
A
回答
10
java.io.File.list(FilenameFilter)
是您正在查找的方法。
1
我有一个方法,使用一个相当复杂的文件结构正则表达式模式。类似的东西可以使用,虽然我相信它可以写得比我的例子更简洁(编辑安全)。
/**
* Get all non-directory filenames from a given foo/flat directory
*
* @param network
* @param typeRegex
* @param locationRegex
* @return
*/
public List<String> getFilteredFilenames(String network, String typeRegex, String locationRegex) {
String regex = null;
List<String> filenames = new ArrayList<String>();
String directory;
// Look at the something network
if (network.equalsIgnoreCase("foo")) {
// Get the foo files first
directory = this.pathname + "/" + "foo/filtered/flat";
File[] foofiles = getFilenames(directory);
// run the regex if need be.
if (locationRegex != null && typeRegex != null) {
regex = typeRegex + "." + locationRegex;
//System.out.println(regex);
}
for (int i = 0; i < foofiles.length; i++) {
if (foofiles[i].isFile()) {
String file = foofiles[i].getName();
if (regex == null) {
filenames.add(file);
}
else {
if (file.matches(regex)) {
filenames.add(file);
}
}
}
}
}
return filenames;
}
相关问题
- 1. 如何在Java中扫描文件夹?
- 2. 扫描文件夹中的文件
- 3. 的Java:扫描文件夹中特定文件
- 4. 如何在SonarQube中扫描隐藏文件夹,例如“.nameFolder”?
- 5. 如何扫描文件的文件夹和它们在Java位置
- 6. 如何扫描文件夹和子文件夹中的所有文件?
- 7. 如何扫描整个主文件夹中的多个子文件夹?
- 8. 如何在java中扫描不同目录中的文件?
- 9. JAVA +扫描文档
- 10. 要包含在Android中扫描.mp3文件的文件夹
- 11. 有CMake递归扫描文件夹?
- 12. MediaStore.Audio.Media.EXTERNAL_CONTENT_URI不扫描数据文件夹内
- 13. Java中的扫描类或jar文件
- 14. SonarQube扫描仪在AST扫描期间卡在一个java文件中
- 15. 如何在Java中扫描文件后将字符串保存在文件中?
- 16. 程序不扫描文本文件(Java)
- 17. 如何扫描一个文件夹中的文本使用dirent头在C
- 18. 在Java中遍历一个日志文件。拉文件扫描
- 19. 在Java中扫描时忽略文本文件中的数字
- 20. 如何扫描文件夹中的所有文件,包括VC++ 2008中的子文件夹?
- 21. 禁用源扫描在NetBeans中特定文件夹7.1 RC2
- 22. 从文件中扫描C
- 23. 从文件扫描
- 24. Android文件扫描
- 25. 扫描.txt文件
- 26. 使用Java扫描器读取文件
- 27. Java阅读文件/扫描器
- 28. Java-使用扫描器读取文件
- 29. Java扫描仪无法读取文件
- 30. sum文件txt使用扫描仪java