16.2. File 変数

概要

File 変数は、ルートが File または FTP のコンシューマーエンドポイントで始まる場合は常に使用できます。これは、基になるメッセージのボディーが java.io.File 型であることを前提にしています。File 変数を使用すると、java.io.File クラスのメソッドを呼び出している場合と同様に、ファイルパス名の様々な部分にアクセスすることができます (実際は、File 言語は File や FTP エンドポイントで設定されたメッセージヘッダーから必要な情報を抽出します)。

起動ディレクトリー

起動ディレクトリー は、File または FTP エンドポイントに指定されるディレクトリーで、一部の File 変数は、このディレクトリーを起点とした相対パスを返します。たとえば、以下の File コンシューマーエンドポイントは、開始ディレクトリー ./filetransfer (相対パス) が指定されています。

file:filetransfer

以下の FTP コンシューマーエンドポイントには、開始ディレクトリー ./ftptransfer (相対パス) が指定されています。

ftp://myhost:2100/ftptransfer

File 変数の命名規則

通常、File 変数は java.io.File クラスの対応するメソッドの後に名前が付けられます。たとえば、file:absolute 変数は、java.io.File.getAbsolute() メソッドによって返される値を提供します。

注記

ただし、この命名規則は厳密ではありません。たとえば、java.io.File.getSize() というメソッドは ありません

変数の一覧表

表16.1「File 言語の変数」 は、File 言語でサポートされるすべての変数の一覧表になります。

表16.1 File 言語の変数

変数説明

file:name

String

起動ディレクトリーを起点とした相対パス名。

file:name.ext

String

ファイルの拡張子 (パス名の最後の . に続く文字)。複数ドットのあるファイル拡張子をサポートします (例: .tar.gz)。

file:name.ext.single

String

ファイルの拡張子 (パス名の最後の . に続く文字)。ファイル拡張子に複数のドットがある場合、この変数は最後の部分のみを返します。

file:name.noext

String

開始ディレクトリーを起点とし、ファイル拡張子を除外した相対パス名。

file:name.noext.single

String

開始ディレクトリーを起点とし、ファイル拡張子を除外した相対パス名。ファイル拡張子に複数のドットがある場合、この変数は最後の部分のみを取り除き、他の部分を返します。

file:onlyname

String

パス名の最後のセグメント。つまり、親ディレクトリーのパスがないファイル名です。

file:onlyname.noext

String

パス名の最後のセグメントで、ファイルの拡張子を省略します。つまり、親ディレクトリーのパスがなく、拡張子もないファイル名です。

file:onlyname.noext.single

String

パス名の最後のセグメントで、ファイルの拡張子を省略します。つまり、親ディレクトリーのパスがなく、拡張子もないファイル名です。ファイル拡張子に複数のドットがある場合、この変数は最後の部分のみを取り除き、他の部分を返します。

file:ext

String

ファイル拡張子 (file:name.ext と同じ)。

file:parent

String

開始ディレクトリーを含む、親ディレクトリーのパス名。

file:path

String

開始ディレクトリーを含む、ファイルのパス名。

file:absolute

ブール値

開始ディレクトリーが絶対パスとして指定された場合は true、そうでない場合は false

file:absolute.path

String

ファイルの絶対パス名。

file:length

Long

ファイルのサイズ。

file:size

Long

file:length と同じです。

file:modified

java.util.Date

最終更新日。