実行時関数:指定したファイルの修正時刻を設定します。
モジュール:USE DFLIB
形式
result = SETFILETIMEQQ (filename, timedate)
filename
(入力) CHARACTER*(*)。ファイルの名前。
timedate
(入力) INTEGER(4)。PACKTIMEQQ で詰め込まれた日時情報。
結果
結果の型は LOGICAL(4) です。成功すれば .TRUE.,そうでなければ .FALSE. が返されます。
修正時刻は,ファイルが最後に修正された時刻で,ファイルの異なったバージョンの追跡を行うために便利です。SETFILETIMEQQ を呼び出すプロセスは,そのファイルに対する書き込み許可モードを持っていなければなりません。そうでなければ,時刻を変更することはできません。timedate に FILE$CURTIME (\DF98\INCLUDE サブディレクトリの DFLIB.F90 で定義されています) を設定すると,SETFILETIMEQQ は現在のシステム時刻を修正時刻に設定します。
関数が失敗した場合,GETLASTERRORQQ を呼び出して原因を究明します。エラーは以下の 1 つです。
ERR$ACCES - 特権がありません。ファイル (またはディレクトリ) の特権が指定した参照モードを許可していません。
ERR$INVAL - 不正な引数です。timedate 引数が不正です。
ERR$MFILE - 開くファイルが多すぎます (修正時刻を変更するにはファイルを開かなければなりません)。
ERR$NOENT - ファイルまたはパスが見つかりませんでした。
ERR$NOMEM - 呼び出しを行ったプロセスが適切に割り当てられていないことを示す,コマンドを実行するのに十分なメモリーがないか,利用可能なメモリーが不正か,または,不正なブロックが存在しています。
互換性
CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB
関連情報
GETLASTERRORQQ,PACKTIMEQQ,UNPACKTIMEQQ
例
USE DFLIB INTEGER(2) day, month, year INTEGER(2) hour, minute, second, hund INTEGER(4) timedate LOGICAL(4) result CALL GETDAT(year, month, day) CALL GETTIM(hour, minute, second, hund) CALL PACKTIMEQQ (timedate, year, month, day, & hour, minute, second) result = SETFILETIMEQQ('myfile.dat', timedate) END