パッケージ com.lmt.lib.bms
クラス BmsMaterialFileFinder
- Object
-
- BmsObjectFinder<Path,Path,String>
-
- BmsMaterialFileFinder
-
public class BmsMaterialFileFinder extends BmsObjectFinder<Path,Path,String>
ファイル拡張子別の素材ファイル検索アルゴリズムの実装クラスです。当クラスを使用することで、異なる拡張子のファイル名を検索するアルゴリズムを簡略化することができます。 例えば、メタ情報に音声ファイル "vocal.wav" と記述され、実際に存在するファイルが "vocal.ogg" だったとしても 実ファイル名のパスを容易に解決することが可能になります。この場合、以下のように記述します。
BmsMaterialFileFinder finder = new BmsMaterialFileFinder("wav", "ogg"); Path actualFilePath = finder.find(Path.of("vocal.wav")); System.out.printf("path=%s\n", actualFilePath); // path=vocal.ogg- 導入されたバージョン:
- 0.11.0
-
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 BmsMaterialFileFinder(String... extensions)1個以上の拡張子を指定して検索オブジェクトを構築します。BmsMaterialFileFinder(List<String> extensions)拡張子のリストを指定して検索オブジェクトを構築します。
-
メソッドの概要
すべてのメソッド staticメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 protected PathdoFind(Path input, String candidate)ファイルパスの拡張子を指定候補の拡張子に置き換え、ファイルの存在確認を行います。protected static PathmakeCandidatePath(Path inputPath, String extension)ファイル名の拡張子を置き換えたパスを生成します。-
クラスから継承されたメソッド BmsObjectFinder
find, getCandidateCount, getFoundCount, getHitCount, getLastCandidate, getQueryCount, getWrongCount, reset
-
-
-
-
コンストラクタの詳細
-
BmsMaterialFileFinder
public BmsMaterialFileFinder(String... extensions)
1個以上の拡張子を指定して検索オブジェクトを構築します。拡張子には"."を含めないでください。また、Linux等の大文字小文字を区別するファイルシステムを持つ プラットフォームでは大文字・小文字の両方を指定してください。
- パラメータ:
extensions- 候補データとなる拡張子一覧- 例外:
NullPointerException- extensionsにnullが含まれるIllegalArgumentException- extensionsの要素に空文字列が含まれるIllegalArgumentException- extensionsが0件
-
BmsMaterialFileFinder
public BmsMaterialFileFinder(List<String> extensions)
拡張子のリストを指定して検索オブジェクトを構築します。拡張子には"."を含めないでください。また、Linux等の大文字小文字を区別するファイルシステムを持つ プラットフォームでは大文字・小文字の両方を指定してください。
- パラメータ:
extensions- 拡張子のリスト- 例外:
NullPointerException- extensionsがnullNullPointerException- extensionsの要素にnullが含まれるIllegalArgumentException- extensionsに空文字列が含まれるIllegalArgumentException- extensionsが0件
-
-
メソッドの詳細
-
doFind
protected Path doFind(Path input, String candidate)
ファイルパスの拡張子を指定候補の拡張子に置き換え、ファイルの存在確認を行います。拡張子を置き換えたファイルパスで Files#isRegularFile によるファイルの存在確認を行い、 trueが返ってきた場合に「ファイルあり」と判定し、拡張子置き換え後のファイルパスを返します。
- 定義:
doFindクラス内BmsObjectFinder<Path,Path,String>- パラメータ:
input- 検索対象のファイルパスcandidate- 候補の拡張子- 戻り値:
- ファイル存在時、置き換え後拡張子のファイルパス。未存在時はnull。
-
-