FAQ

FAMOS

シーケンス / 関数top

Tips

ID.s066

Q. 日付フォルダー内のデータをループで結合する方法

A.


フォルダー名が日付になっていると”その1”の方法ではエラーが表示されてしまいます。どのように対応すればよいですか?

; C:\imc\dat\Experim\
; |
; |__ 2003-01-23 10-31-22 (1)\
; |     Channel1.DAT
; |     Channel3.DAT
; |__ 2003-01-23 10-31-32 (2)\
; |     Channel1.DAT
; |     Channel3.DAT
; |__ 2003-01-23 10-31-42 (3)\
; |     Channel1.DAT
; |     Channel3.DAT

上記のようにフォルダー名にスペースや括弧が含まれている場合、関数"LOAD"はパスを認識できません。
このような場合、ファイル関数を使用してください。

Example

;;;;ダミーデータの作成
    Channel1 = Leng(0,0)
    Channel3 = Leng(0,0)


;;;;Main Loop
    FID = FsFileListNew("c:\imc", "*.*", 1, 0, 0)
    i=1
    While i<=FsFileListGetCount(FID)

    ;;;;ファイル名の作成
        dir   = FsFileListGetName(FID,i)
        Name1 = dir + "\Channel01.RAW"
        Name2 = dir + "\Channel03.RAW"

    ;;;;データの読み込み
        DID   = FileOpenDSF(Name1,0)
        data1 = FileObjRead(DID,1)
        Err   = FileClose(DID)

        DID   = FileOpenDSF(Name2,0)
        data2 = FileObjRead(DID,1)
        Err   = FileClose(DID)

    ;;;;データの結合
        Channel1 = Join( Channel1, data1)
        Channel3 = Join( Channel3, data1)

        i=i+1
    End
    FsFileListClose(FID)

製品詳細はこちら

<< Tipsに関するFAQ一覧へ戻る