2

こんにちは、FileSystem.listStatus メソッドを使用しているときに、ログ ファイルをフィルター処理して、ログ ファイルではないファイルのみを一覧表示したいと考えています。どうすればいいですか?ありがとう

4

2 に答える 2

2

FileInputFormatのソース(62 行目) を見ると、アンダースコアまたはピリオドで始まるファイルを無視するプライベートな静的 PathFilter があります。非公開なので、コードのコピーを作成する必要があります。または、入力ファイルが常に部分で始まる場合 (つまり、MultipleOutputs を使用していない場合) は、答えで十分です。

于 2012-05-30T15:18:21.603 に答える
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 に答える