Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 查找具有匹配目录和文件名的文件_Java_Io - Fatal编程技术网

Java 查找具有匹配目录和文件名的文件

Java 查找具有匹配目录和文件名的文件,java,io,Java,Io,目前,我必须找到具有这些模式的文件并处理,但我找不到任何有助于匹配完整目录+需要查找的文件名的内容 下面是一个我需要使用的完整目录的示例 /logs/xxx/production/jboss/instance*/xxx-production-zzzz*/xxx-production-zzzz*-XXX-Metrics.log 提前感谢。为本案例找到了最佳解决方案。 必须从apache导入ant.jar logs = new ArrayList<File&g

目前,我必须找到具有这些模式的文件并处理,但我找不到任何有助于匹配完整目录+需要查找的文件名的内容

下面是一个我需要使用的完整目录的示例

/logs/xxx/production/jboss/instance*/xxx-production-zzzz*/xxx-production-zzzz*-XXX-Metrics.log

提前感谢。

为本案例找到了最佳解决方案。 必须从apache导入ant.jar

                logs = new ArrayList<File>();               
                String basedir = "/logs/xxx/production/jboss";
                String[] include = {"pvmk*/xxx-production-zzzzz*/xxx-production-zzzzz*-XXX-Metrics.log"};
                System.out.println(new Timestamp(System.currentTimeMillis()));
                System.out.println("Reading files...");
                DirectoryScanner scanner = new DirectoryScanner();
                scanner.setIncludes(include);
                scanner.setBasedir(basedir);
                scanner.setCaseSensitive( true );
                scanner.scan();
                String[] files = scanner.getIncludedFiles();
                for (String file : files) {
                    System.out.println("Loading file: " + file );
                    File log;
                    log = new File(new String ("/logs/xxx/production/jboss/" + file));
                    logs.add(log);
                }
logs=newarraylist();
字符串basedir=“/logs/xxx/production/jboss”;
字符串[]include={“pvmk*/xxx-production-zzzzz*/xxx-production-zzzzz*-xxx Metrics.log”};
System.out.println(新的时间戳(System.currentTimeMillis());
System.out.println(“读取文件…”);
DirectoryScanner scanner=新的DirectoryScanner();
扫描仪。设置包括(包括);
scanner.setBasedir(basedir);
scanner.setCaseSensitive(真);
scanner.scan();
String[]files=scanner.getIncludedFiles();
用于(字符串文件:文件){
System.out.println(“加载文件:+文件”);
文件日志;
log=新文件(新字符串(“/logs/xxx/production/jboss/”+File));
日志。添加(日志);
}

您是如何尝试的?仅仅要求代码在这个网站上不起作用…这是否总是你要访问的文件,那么你可能只需要执行“String.contains”(“xxx production zzzz*-xxx Metrics.log”)并取出你的文件。但正如@Boristeider所提到的。请尝试一些操作,并提供一个错误或一段代码,以便对其进行更正或细化。@BoristheSpider我曾尝试搜索多个函数和逻辑,以在匹配的目录中查找匹配的文件,但我只能找到在预设目录中查找文件的方法。请尝试在谷歌搜索“java查找文件通配符”,有很多例子和选择。