ファイルモデル
ファイルをデータモデルとして使用する 文字列を操作する
各ファイルは、個別のパラメーターに分解できるモデルとして表示されます。
ファイルモデル
これを行うには Expand Fileブロックを使います。これを使用すると、ファイルのサイズ (Size)、その内容 (Bytes)、名前(Name)などのパラメータを調べることができます。
ファイルは2つしかないので、複雑なチェックループを作る必要はありません。配列から最初のファイルを取り出して、そこから始めればいいのです。そのためには、おなじみの Array Elementブロックをインデックス 0 で使用し、結果のファイルを展開します。
ファイル名がわかったら、次は拡張子の決定に進みます。
文字列の操作
これを行うには、文字列を扱うためのブロック(String)が必要です。その一般的な一覧は Functions - Stringセクションにあり、文字列処理に関連するあらゆるタスクを解決することができます。文字列の作成、連結、長さの確認、余分な部分の切り取り、分割、部分置換、特定の文字や式の位置の確認、大文字小文字の変更など、さまざまな処理を行うことができます。
ここでは、すべての可能性に言及することはしません。そのほとんどはブロック名から明らかですし、詳細な情報についてはドキュメントがあります。その代わり、今回のケースで具体的な例を見てみましょう。
私たちの仕事は、ファイルの拡張子を調べることです。各ファイルでは、名前の最後にドットの後に書かれていることが分かっています。そこで、ドット文字を区切り文字として名前の文字列を分割すれば、指定されたファイル拡張子を持つ文字列を得ることができます。
そのために Split Stringブロックを使います。これは、文字列(ファイル名)とデリミタ(".")を入力パラメータとして受け取り、文字列の配列を出力として返す。
ほとんどの場合、結果の配列は2つの要素で構成されます。1つ目の要素にはファイル名が、2つ目の要素にはその拡張子が格納されます。しかし、ファイル名の異なる位置にドットが存在する場合もあり (ドットの使用は禁止されていません)、その場合は要素の数が異なる可能性があります。しかし、拡張子が常に配列の最後の要素にあることは確かなので、 あとはそれを取得するだけです。
配列の総要素数を決めて(Array Sizeブロック)することで行います。最後の要素を得るには、そのインデックスで参照する必要があります。番号は 0 から始まるので、総数から 1 を引きます (Subtractブロック)を引いて、最後の要素の序数を得ます。後は配列から拾い上げるだけです(Array Elementブロック)から取り出すだけです。