ページの先頭行へ戻る
NetCOBOL V12.0 CBLサブルーチン ユーザーズガイド
FUJITSU Software

3.2 CBL_SPLIT_FILENAME

ファイル名を構成要素(装置名、基本名、拡張子)に分解します。

指定方法

呼出しの記述
CALL "CBL_SPLIT_FILENAME"  USING 分割結合パラメタ
                                 分割バッファ
                           RETURNING 状態コード.
パラメタのデータ定義
       01  分割結合パラメタ.
         02  パラメタ長            PIC 9(4) BINARY.
         02  分割結合フラグ1      PIC 9(2) BINARY.
         02  分割結合フラグ2      PIC 9(2) BINARY.
         02  装置相対番地          PIC 9(4) BINARY.
         02  装置名長              PIC 9(4) BINARY.
         02  基本名相対番地        PIC 9(4) BINARY.
         02  基本名長              PIC 9(4) BINARY.
         02  拡張子相対番地        PIC 9(4) BINARY.
         02  拡張子長              PIC 9(4) BINARY.
         02  全長                  PIC 9(4) BINARY.
         02  分割バッファ長        PIC 9(4) BINARY.
         02  結合バッファ長        PIC 9(4) BINARY.
         02  第1パス構成要素長    PIC 9(4) BINARY.
       01  分割バッファ            PIC X(n).
       01  状態コード              PIC S9(4) COMP-5.
分割結合パラメタ

パラメタ長

分割結合パラメタの長さを指定します。通常は24です。

分割結合フラグ1

分割結合フラグ1の情報をビット単位で指定します。ビットの情報は以下のとおりです。

  • ビット 0

    • ON: ファイル名を大文字で返却する。

    • OFF: ファイル名は指定されたまま。

  • ビット 1

    • ON: 文字列は(null)終了する。

    • OFF: 文字列はスペースで終了する。

分割結合フラグ2

分割結合フラグ2の情報を格納する領域を指定します。格納される情報は以下のとおりです。

  • ビット 1

    • ON: 装置名にワイルドカードがある。

    • OFF: 装置名にワイルドカードがない。

  • ビット 2

    • ON: 基本名または拡張子にワイルドカードがある。

    • OFF: 基本名または拡張子にワイルドカードがない。

装置相対番地

分割バッファ内の装置名の先頭からの相対番地を格納する領域を指定します。

装置名長

装置名の長さを格納する領域を指定します。

基本名相対番地

分割バッファ内の基本名の先頭からの相対番地を格納する領域を指定します。

基本名長

基本名の長さを格納する領域を指定します。

拡張子相対番地

分割バッファ内の拡張子の先頭からの相対番地を格納する領域を指定します。

拡張子長

拡張子の長さを格納する領域を指定します。

全長

文字列内の合計文字数を格納する領域を指定します。

分割バッファ長

分割バッファの長さを指定します。最大値は255バイトです。

結合バッファ長

結合バッファの長さを指定します。

第1パス構成要素長

最初の"\"または、"/"または、":"までの文字数を格納する領域を指定します。

分割バッファ

分割バッファを指定します。

復帰コード

復帰コードは、RETURNINGに指定した状態コードに設定されます。

状態コード
  • 0: 成功

  • 4: ファイル名に誤りがある

使用例

分割バッファに"A:\Example\Master.doc"が格納されている場合、以下のように返却されます。

装置相対番地     1
装置名長        10
基本名相対番地  12
基本名長         6
拡張子相対番地  19
拡張子長         3