2

嗨,在使用 FileSystem.listStatus 方法时,我想过滤日志文件并仅列出不是日志文件的文件。我该怎么做?谢谢

4

2 回答 2

2

这就是我摆脱 _SUCCESS 文件的方式

PathFilter clusterFileFilter = new PathFilter() {
                  public boolean accept(Path path) {
                    return path.getName().startsWith("part");
                  }
                };


    FileStatus[] fileStatusArray = fs.listStatus(path, clusterFileFilter);
于 2012-05-30T15:09:21.297 回答
2

如果您查看FileInputFormat的源代码(第 62 行),它们有一个私有静态 PathFilter 忽略以下划线或句点开头的文件。由于它是私有的,您必须复制代码,或者如果您的输入文件总是以部分开头(即您没有使用 MultipleOutputs),那么您的答案就足够了

于 2012-05-30T15:18:21.603 回答