パッケージ org.opengion.fukurou.util

クラス HybsFileFilter

java.lang.Object
org.opengion.fukurou.util.HybsFileFilter
すべての実装されたインタフェース:
FileFilter

public final class HybsFileFilter extends Object implements FileFilter
HybsFileFilter.java は、複数の FileFilter を順次実行する フィルタクラスです。 FileFilter インターフェースを継承し、File クラスの listFiles(FileFilter) メソッドに 渡すことができます。 Filterに設定された複数のフィルタすべてを満たす場合の時のみ、accept(File pathname) メソッドは、true を返します。 ※ 6.3.1.1 (2015/07/10) 各フィルター登録時に、自分自身を返す、メソッドチェーンに対応します。 大文字/小文字の区別なしで判定する、(ignoreCase=true)属性を追加します。 大文字小文字は、すべての文字判定型フィルターに適用されます。 ※ 6.4.0.2 (2015/12/11) prefix,suffix,instr,equals に、("|"で複数指定可) の説明をJavaDocに追加。 useDIR 属性に、onlyパラメータを追加[false:File/true:File+Dir/only:Dir]。 ※ 7.2.6.0 (2020/06/30) useDIR 属性は廃止。 この実装は同期化されません。
変更履歴:
6.3.1.1 (2015/07/10) メソッドチェーン化と、大文字/小文字の区別なし(ignoreCase=true)対応, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
導入されたバージョン:
JDK11.0,
  • コンストラクタの概要

    コンストラクタ
    コンストラクタ
    説明
    指定された抽象パス名がパス名リストに含まれる必要がある場合、スルー(選択)されます。
    HybsFileFilter(boolean ignoreCase)
    引数に、ディレクトリの判定を行うかどうかを指定するコンストラクタです。
    HybsFileFilter(boolean ignoreCase, boolean notEquals)
    引数に、ディレクトリの判定を行うかどうかを指定するコンストラクタです。
  • メソッドの概要

    修飾子とタイプ
    メソッド
    説明
    boolean
    accept(File pathname)
    指定された抽象パス名がパス名リストに含まれる必要がある場合、スルー(選択)されます。
    endsWith(String suffix)
    内部判定フィルタ: 指定された接頭辞で終わる場合、スルー(選択)されます。
    endsWith(String suffix, boolean reverse)
    内部判定フィルタ: 指定された接頭辞で終わる場合、スルー(選択)されます。
    内部判定フィルタ: ファイル名が一致する場合、スルー(選択)されます。
    fileEquals(String str, boolean reverse)
    内部判定フィルタ: ファイル名が一致する場合、スルー(選択)されます。
    内部判定フィルタ: 指定された文字列がファイル名に含まれる場合、スルー(選択)されます。
    instr(String str, boolean reverse)
    内部判定フィルタ: 指定された文字列がファイル名に含まれる場合、スルー(選択)されます。
    内部判定フィルタ: 指定された文字列がフォルダ名に含まれる場合、スルー(選択)されます。
    instrDir(String str, boolean reverse)
    内部判定フィルタ: 指定された文字列がフォルダ名に含まれる場合、スルー(選択)されます。
    内部判定フィルタ: ファイルが hidden の場合、スルー(選択)されます。
    isHidden(String flag, boolean reverse)
    内部判定フィルタ: ファイルが hidden の場合、スルー(選択)されます。
    内部判定フィルタ: 指定の大きさより大きいファイルの場合、スルー(選択)されます。
    内部判定フィルタ: 指定の大きさより小さいファイルの場合、スルー(選択)されます。
    内部判定フィルタ: 指定のタイムスタンプ以後に変更されている場合、スルー(選択)されます。
    lastModified(String modify, boolean reverse)
    内部判定フィルタ: 指定のタイムスタンプ以後に変更されている場合、スルー(選択)されます。
    内部判定フィルタ: フォルダが、指定された 正規表現 と一致する場合、スルー(選択)されます 大文字小文字の区別は、ignoreCase で切り替えます。
    matchDir(String str, boolean reverse)
    内部判定フィルタ: フォルダが、指定された 正規表現 と一致する場合、スルー(選択)されます 大文字小文字の区別は、ignoreCase で切り替えます。
    内部判定フィルタ: ファイル名が、指定された 正規表現 と一致する場合、スルー(選択)されます 大文字小文字の区別は、ignoreCase で切り替えます。
    matches(String str, boolean reverse)
    内部判定フィルタ: ファイル名が、指定された 正規表現 と一致する場合、スルー(選択)されます 大文字小文字の区別は、ignoreCase で切り替えます。
    startsDir(String prefix)
    内部判定フィルタ: 指定された接頭辞で始まるディレクトリの場合、スルー(選択)されます。
    startsDir(String prefix, boolean reverse)
    内部判定フィルタ: 指定された接頭辞で始まるディレクトリの場合、スルー(選択)されます。
    内部判定フィルタ: 指定された接頭辞で始まる場合、スルー(選択)されます。
    startsWith(String prefix, boolean reverse)
    内部判定フィルタ: 指定された接頭辞で始まる場合、スルー(選択)されます。

    クラスから継承されたメソッド java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • HybsFileFilter

      public HybsFileFilter()
      指定された抽象パス名がパス名リストに含まれる必要がある場合、スルー(選択)されます。 ここでの判定ロジックでは、ファイルについてのみ処理します。 ディレクトリは、常に、true を返します。 notEquals 属性で、判定結果を反転させることができます。 ignoreCase の初期値は、大文字/小文字の区別しない(true)です。
      変更履歴:
      6.3.1.1 (2015/07/10) 大文字/小文字の区別[true:しない/false:する], 6.4.0.2 (2015/12/11) useDIR 属性に、onlyパラメータを追加します[false:File/true:File+Dir/only:Dir]。, 6.8.0.0 (2017/06/02) 判定結果を反転させて処理する notEquals 属性を追加します。, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • HybsFileFilter

      public HybsFileFilter(boolean ignoreCase)
      引数に、ディレクトリの判定を行うかどうかを指定するコンストラクタです。 ここで、true を指定すると、ファイル、ディレクトリの両方に対して 処理を実施します。 ディレクトリの判定の場合、acceptメソッドで、false が返ると それ以下の処理も実行されません。
      パラメータ:
      ignoreCase - 大文字/小文字の区別[true:しない/false:する]
      変更履歴:
      5.1.2.0 (2010/01/01) 引数つきコンストラクタ追加, 6.3.1.1 (2015/07/10) 大文字/小文字の区別[true:しない/false:する], 6.4.0.2 (2015/12/11) useDIR 属性に、onlyパラメータを追加します[false:File/true:File+Dir/only:Dir]。, 6.8.0.0 (2017/06/02) 判定結果を反転させて処理する notEquals 属性を追加します。, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。 // * @param useDIR 判定対象を指定します[false:File/true:File+Dir/only:Dir]。
    • HybsFileFilter

      public HybsFileFilter(boolean ignoreCase, boolean notEquals)
      引数に、ディレクトリの判定を行うかどうかを指定するコンストラクタです。 ここで、true を指定すると、ファイル、ディレクトリの両方に対して 処理を実施します。 ディレクトリの判定の場合、acceptメソッドで、false が返ると それ以下の処理も実行されません。
      パラメータ:
      ignoreCase - 大文字/小文字の区別[true:しない/false:する]
      notEquals - 判定結果を反転させて処理するかどうか[true:反転する/false:通常]
      変更履歴:
      5.1.2.0 (2010/01/01) 引数つきコンストラクタ追加, 6.3.1.1 (2015/07/10) 大文字/小文字の区別[true:しない/false:する], 6.4.0.2 (2015/12/11) useDIR 属性に、onlyパラメータを追加します[false:File/true:File+Dir/only:Dir]。, 6.8.0.0 (2017/06/02) 判定結果を反転させて処理する notEquals 属性を追加します。, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。 // * @param useDIR 判定対象を指定します[false:File/true:File+Dir/only:Dir]。
  • メソッドの詳細

    • accept

      public boolean accept(File pathname)
      指定された抽象パス名がパス名リストに含まれる必要がある場合、スルー(選択)されます。 ここでの判定ロジックでは、ファイルについてのみ処理します。 ディレクトリは、常に、true を返します。
      定義:
      accept インタフェース内 FileFilter
      パラメータ:
      pathname - ファイルオブジェクト
      戻り値:
      パス名リストに含まれるかどうか
      関連項目:
      変更履歴:
      6.4.0.2 (2015/12/11) useDIR 属性に、onlyパラメータを追加します[false:File/true:File+Dir/only:Dir]。, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • startsWith

      public HybsFileFilter startsWith(String prefix)
      内部判定フィルタ: 指定された接頭辞で始まる場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。
      パラメータ:
      prefix - 接頭辞("|"で複数指定可)
      戻り値:
      自分自身(this)
      関連項目:
      変更履歴:
      6.3.1.1 (2015/07/10) 自分自身を返します。, 6.8.0.0 (2017/06/02) 判定結果を反転させて処理する notEquals 属性を追加します。
    • startsWith

      public HybsFileFilter startsWith(String prefix, boolean reverse)
      内部判定フィルタ: 指定された接頭辞で始まる場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。 reverse = true に設定すると、結果を反転させます。
      パラメータ:
      prefix - 接頭辞("|"で複数指定可)
      reverse - true:結果を反転する
      戻り値:
      自分自身(this)
      関連項目:
      変更履歴:
      5.1.2.0 (2010/01/01) reverse属性の追加, 6.3.1.1 (2015/07/10) 自分自身を返します。, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • startsDir

      public HybsFileFilter startsDir(String prefix)
      内部判定フィルタ: 指定された接頭辞で始まるディレクトリの場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。
      パラメータ:
      prefix - 接頭辞("|"で複数指定可)
      戻り値:
      自分自身(this)
      関連項目:
      変更履歴:
      6.4.3.2 (2016/02/19) ディレクトリの先頭一致対応, 6.8.0.0 (2017/06/02) 判定結果を反転させて処理する notEquals 属性を追加します。
    • startsDir

      public HybsFileFilter startsDir(String prefix, boolean reverse)
      内部判定フィルタ: 指定された接頭辞で始まるディレクトリの場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。 reverse = true に設定すると、結果を反転させます。
      パラメータ:
      prefix - 接頭辞("|"で複数指定可)
      reverse - true:結果を反転する
      戻り値:
      自分自身(this)
      関連項目:
      変更履歴:
      6.4.3.2 (2016/02/19) ディレクトリの先頭一致対応, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • endsWith

      public HybsFileFilter endsWith(String suffix)
      内部判定フィルタ: 指定された接頭辞で終わる場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。
      パラメータ:
      suffix - 接尾辞("|"で複数指定可)
      戻り値:
      自分自身(this)
      関連項目:
      変更履歴:
      6.3.1.1 (2015/07/10) 自分自身を返します。, 6.8.0.0 (2017/06/02) 判定結果を反転させて処理する notEquals 属性を追加します。
    • endsWith

      public HybsFileFilter endsWith(String suffix, boolean reverse)
      内部判定フィルタ: 指定された接頭辞で終わる場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。 reverse = true に設定すると、結果を反転させます。
      パラメータ:
      suffix - 接尾辞("|"で複数指定可)
      reverse - true:結果を反転する
      戻り値:
      自分自身(this)
      関連項目:
      変更履歴:
      5.1.2.0 (2010/01/01) reverse属性の追加, 6.3.1.1 (2015/07/10) 自分自身を返します。, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • instr

      public HybsFileFilter instr(String str)
      内部判定フィルタ: 指定された文字列がファイル名に含まれる場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。
      パラメータ:
      str - 指定の部分文字列("|"で複数指定可)
      戻り値:
      自分自身(this)
      変更履歴:
      6.3.1.1 (2015/07/10) 自分自身を返します。, 6.8.0.0 (2017/06/02) 判定結果を反転させて処理する notEquals 属性を追加します。
    • instr

      public HybsFileFilter instr(String str, boolean reverse)
      内部判定フィルタ: 指定された文字列がファイル名に含まれる場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。 reverse = true に設定すると、結果を反転させます。
      パラメータ:
      str - 指定の部分文字列("|"で複数指定可)
      reverse - 結果を反転させるかどうか(true:反転)
      戻り値:
      自分自身(this)
      変更履歴:
      5.1.2.0 (2010/01/01) reverse属性の追加, 6.3.1.1 (2015/07/10) 自分自身を返します。, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • instrDir

      内部判定フィルタ: 指定された文字列がフォルダ名に含まれる場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。
      パラメータ:
      str - 指定の部分文字列("|"で複数指定可)
      戻り値:
      自分自身(this)
      変更履歴:
      7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • instrDir

      public HybsFileFilter instrDir(String str, boolean reverse)
      内部判定フィルタ: 指定された文字列がフォルダ名に含まれる場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。 reverse = true に設定すると、結果を反転させます。
      パラメータ:
      str - 指定の部分文字列("|"で複数指定可)
      reverse - 結果を反転させるかどうか(true:反転)
      戻り値:
      自分自身(this)
      変更履歴:
      7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • fileEquals

      内部判定フィルタ: ファイル名が一致する場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。
      パラメータ:
      str - ファイル名文字列("|"で複数指定可)
      戻り値:
      自分自身(this)
      変更履歴:
      6.3.1.1 (2015/07/10) 自分自身を返します。
    • fileEquals

      public HybsFileFilter fileEquals(String str, boolean reverse)
      内部判定フィルタ: ファイル名が一致する場合、スルー(選択)されます。 引数が null の場合は、追加しません。 引数に、'|' 区切り文字で複数設定した場合は、OR 判断(どれかが一致)します。 reverse = true に設定すると、結果を反転させます。
      パラメータ:
      str - ファイル名文字列("|"で複数指定可)
      reverse - true:結果を反転する
      戻り値:
      自分自身(this)
      変更履歴:
      5.1.2.0 (2010/01/01) reverse属性の追加, 6.3.1.1 (2015/07/10) 自分自身を返します。, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • matches

      内部判定フィルタ: ファイル名が、指定された 正規表現 と一致する場合、スルー(選択)されます 大文字小文字の区別は、ignoreCase で切り替えます。 ignoreCase ? Pattern.compile( str,Pattern.CASE_INSENSITIVE ) : Pattern.compile( str ) ; pattern.matcher( pathname.getName() ).find() == true と同じ結果が得られます。 引数が null の場合は、追加しません。
      パラメータ:
      str - ファイル名文字列(正規表現)
      戻り値:
      自分自身(this)
      関連項目:
      変更履歴:
      6.3.1.1 (2015/07/10) 自分自身を返します。, 6.8.0.0 (2017/06/02) 判定結果を反転させて処理する notEquals 属性を追加します。
    • matches

      public HybsFileFilter matches(String str, boolean reverse)
      内部判定フィルタ: ファイル名が、指定された 正規表現 と一致する場合、スルー(選択)されます 大文字小文字の区別は、ignoreCase で切り替えます。 ignoreCase ? Pattern.compile( str,Pattern.CASE_INSENSITIVE ) : Pattern.compile( str ) ; pattern.matcher( pathname.getName() ).find() == true と同じ結果が得られます。 引数が null の場合は、追加しません。 reverse = true に設定すると、結果を反転させます。
      パラメータ:
      str - ファイル名文字列(正規表現)
      reverse - true:結果を反転する
      戻り値:
      自分自身(this)
      関連項目:
      変更履歴:
      5.1.2.0 (2010/01/01) reverse属性の追加, 6.3.1.1 (2015/07/10) 自分自身を返します。, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • matchDir

      内部判定フィルタ: フォルダが、指定された 正規表現 と一致する場合、スルー(選択)されます 大文字小文字の区別は、ignoreCase で切り替えます。 ignoreCase ? Pattern.compile( str,Pattern.CASE_INSENSITIVE ) : Pattern.compile( str ) ; pattern.matcher( pathname.getName() ).find() == true と同じ結果が得られます。 引数が null の場合は、追加しません。
      パラメータ:
      str - ファイル名文字列(正規表現)
      戻り値:
      自分自身(this)
      関連項目:
      変更履歴:
      7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • matchDir

      public HybsFileFilter matchDir(String str, boolean reverse)
      内部判定フィルタ: フォルダが、指定された 正規表現 と一致する場合、スルー(選択)されます 大文字小文字の区別は、ignoreCase で切り替えます。 ignoreCase ? Pattern.compile( str,Pattern.CASE_INSENSITIVE ) : Pattern.compile( str ) ; pattern.matcher( pathname.getName() ).find() == true と同じ結果が得られます。 引数が null の場合は、追加しません。 reverse = true に設定すると、結果を反転させます。
      パラメータ:
      str - ファイル名文字列(正規表現)
      reverse - true:結果を反転する
      戻り値:
      自分自身(this)
      関連項目:
      変更履歴:
      7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • lastModified

      内部判定フィルタ: 指定のタイムスタンプ以後に変更されている場合、スルー(選択)されます。 ディレクトリは、ここの判定では無視します。(必ず true を返します) 日付けの指定に、YYYYMMDD 形式の 8文字数字文字列以外に、 TODAY や YESTERDAY なども使用できます。 TODAY は、実行日の 00:00:00 を基準時刻とし、YESTERDAY は、その前日になります。 引数が null の場合は、追加しません。
      パラメータ:
      modify - 時刻を表す long 値(ミリ秒単位)
      戻り値:
      自分自身(this)
      変更履歴:
      6.3.1.1 (2015/07/10) 自分自身を返します。, 6.8.0.0 (2017/06/02) 判定結果を反転させて処理する notEquals 属性を追加します。
    • lastModified

      public HybsFileFilter lastModified(String modify, boolean reverse)
      内部判定フィルタ: 指定のタイムスタンプ以後に変更されている場合、スルー(選択)されます。 ディレクトリは、ここの判定では無視します。(必ず true を返します) 日付けの指定に、YYYYMMDD 形式の 8文字数字文字列以外に、 TODAY や YESTERDAY なども使用できます。 TODAY は、実行日の 00:00:00 を基準時刻とし、YESTERDAY は、その前日になります。 引数が null の場合は、追加しません。
      パラメータ:
      modify - 時刻を表す long 値(ミリ秒単位)
      reverse - true:結果を反転する
      戻り値:
      自分自身(this)
      変更履歴:
      6.3.1.1 (2015/07/10) 自分自身を返します。, 6.8.0.0 (2017/06/02) 判定結果を反転させて処理する notEquals 属性を追加します。, 7.2.6.0 (2020/06/30) ディレクトリ処理を統一します。
    • isLarger

      内部判定フィルタ: 指定の大きさより大きいファイルの場合、スルー(選択)されます。 指定はバイト単位ですが、**KB , **MB , **GB などの単位を付ける事も可能です。 現時点では、K , KB , M , MB , G , GB のみ指定可能です。
      パラメータ:
      slen - ファイルの大きさ(バイト単位)。同値を含む
      戻り値:
      自分自身(this)
      変更履歴:
      5.7.4.3 (2014/03/28) isLarger,isSmaller属性を文字列に変更, 6.3.1.1 (2015/07/10) 自分自身を返します。
    • isSmaller

      内部判定フィルタ: 指定の大きさより小さいファイルの場合、スルー(選択)されます。 引数が 0以下(マイナス) の場合は、追加しません。
      パラメータ:
      slen - ファイルの大きさ(バイト単位)。同値を含まない。
      戻り値:
      自分自身(this)
      変更履歴:
      5.7.4.3 (2014/03/28) isLarger,isSmaller属性を文字列に変更, 6.3.1.1 (2015/07/10) 自分自身を返します。
    • isHidden

      内部判定フィルタ: ファイルが hidden の場合、スルー(選択)されます。 引数がtrueの場合は、hiddenファイルのみを選択します。 falseの場合は、hiddenファイル以外を選択します。(つまり hiddenファイルをブロックします。) hidden をブロックしたい場合は、false を設定し、すべて選択したい場合は、filter設定をしない事になります。 引数が null の場合は、追加しません。
      パラメータ:
      flag - [true:/false]
      戻り値:
      自分自身(this)
      変更履歴:
      5.7.5.0 (2014/04/04) 新規追加, 6.3.1.1 (2015/07/10) 自分自身を返します。, 6.8.0.0 (2017/06/02) 判定結果を反転させて処理する notEquals 属性を追加します。
    • isHidden

      public HybsFileFilter isHidden(String flag, boolean reverse)
      内部判定フィルタ: ファイルが hidden の場合、スルー(選択)されます。 引数がtrueの場合は、hiddenファイルのみを選択します。 falseの場合は、hiddenファイル以外を選択します。(つまり hiddenファイルをブロックします。) hidden をブロックしたい場合は、false を設定し、すべて選択したい場合は、filter設定をしない事になります。 reverse = true に設定すると、結果を反転させます。
      パラメータ:
      flag - [true:/false]
      reverse - true:結果を反転する
      戻り値:
      自分自身(this)
      変更履歴:
      5.7.5.0 (2014/04/04) 新規追加, 6.3.1.1 (2015/07/10) 自分自身を返します。