日本-日本語 |
|
|
|
OpenVMS マニュアル |
|
HP OpenVMS
|
目次 | 索引 |
絶対時刻,または複合時刻文字列を yyyy-mm-dd hh:mm:ss.cc という形式の文字列に変換します。また F$CVTIME 関数は,絶対時刻,デルタ時間,またはそれらの組み合せの文字列に関する情報も戻します。
F$CVTIME ([入力時刻][,出力時刻形式][,フィールド])
入力時刻
絶対時刻,デルタ時間,または複合時刻を含む文字列,あるいは TODAY,TOMORROW,YESTERDAY のいずれかを指定します。入力時刻文字列は,文字列式として指定します。入力時刻 引数を省略した場合,または空文字列 ("") が指定された場合は,絶対時刻形式での現在のシステムの日付が使用されます。日付けフィールドの一部が省略された場合は,省略された値は現在の日付の対応する値になります。時刻フィールドの一部が省略された場合は,省略された値は 0 になります。
時刻値の指定についての詳細は,『OpenVMS ユーザーズ・マニュアル』,またはオンライン・ヘルプのトピック Date を参照してください。
入力時刻 引数がデルタ時間の場合は, 出力時刻形式 引数として DELTA を指定しなければなりません。
出力時刻形式
戻される情報の時刻形式を指定します。出力時刻形式引数は,次のいずれかの文字列を指定します。
ABSOLUTE 要求された情報が,絶対時刻形式 ( dd-mmm-yyyy hh:mm:ss.cc) で戻されるように指定します。 dd が 1 桁の場合,先行の 0 や空白文字は戻されません。 COMPARISON (省略時の設定) 要求された情報が, yyyy-mm-dd hh:mm:ss.cc という形式で戻されるように指定します。 DELTA 要求された情報が,デルタ形式 dddd-hh:mm:ss:cc で戻されるように指定します。 出力時刻形式引数として DELTA を指定する場合には,入力時刻引数に対してもデルタ時間を指定しなければなりません。
出力フィールド
次のいずれか 1 つ (短縮できません) を含む文字列式を指定します。 DATE,MONTH,DATETIME (省略時の設定),SECOND,DAY,TIME,HOUR,WEEKDAY, HUNDREDTH,YEAR,MINUTE,DAYOFYEAR,HOUROFYEAR,MINUTEOFYEAR,SECONDOFYEAR。情報は,出力時刻形式 引数に指定した時刻形式で戻されます。
入力時刻 引数がデルタ時間で, 出力時刻形式 引数が DELTA の場合は,MONTH,WEEKDAY,YEAR, DAYOFYEAR,HOUROFYEAR,MINUTEOFYEAR,または SECONDOFYEAR は指定できません。
曜日が戻される場合は,最初の文字は大文字でそれ以降の文字は小文字です。
F$CVTIME 関数を使用する場合,( 最後の引数の右に指定する ) オプションの引数は省略できますが,最後に指定する引数の左の引数を省略する場合は,コンマ (,) は省略できません。絶対時刻,または複合時刻形式で入力時刻引数を指定した場合は, 出力時刻形式 引数として ABSOLUTE や COMPARISON は指定できますが,DELTA は指定できません。
デルタ時間形式で 入力時刻引数を指定した場合は, 出力時刻形式 引数として DELTA を指定しなければなりません。
#1 |
---|
$ TIME = F$TIME() $ SHOW SYMBOL TIME TIME = "14-DEC-2002 10:56:23.10" $ TIME = F$CVTIME(TIME) $ SHOW SYMBOL TIME TIME = "2002-12-14 10:56:23.10" |
この例では F$TIME 関数を使用して,文字列としてシステム時刻を戻し,その時刻を TIME というシンボルに割り当てています。次に,F$CVTIME関数を使用して,システム時刻を別の時刻形式に変換しています。TIME はシンボルなので,この引数を引用符 (" ") で囲む必要はありません。レキシカル関数に対する引数としてシンボルが使用された時,シンボルは自動的に評価されます。
この結果,求められた文字列を使って,2 つの日付を比較できます (.LTS. 演算子と .GTS. 演算子を使用します )。たとえば,F$CVTIME を使用すれば,2 つの時刻文字列を変換し,その結果を TIME_1 と TIME_2 というシンボルに格納できます。そのあと,2 つの値を比較し,次に示されているように結果にもとづいてラベルに分岐させることができます。
$ IF TIME_1 .LTS. TIME_2 THEN GOTO FIRST
#2 |
---|
$ NEXT = F$CVTIME("TOMORROW",,"WEEKDAY") $ SHOW SYMBOL NEXT NEXT = "Tuesday" |
この例では,F$CVTIME 関数は "TOMORROW" という絶対時刻キーワードに対応する曜日を戻します。"TOMORROW" と "WEEKDAY" という引数は,引用符で囲まなければなりません。これらの引数は,文字列式だからです。また,省略する 出力時刻形式引数に対しては,省略したことを示すために,プレースホルダとしてコンマを指定しなければなりません。
#3 |
---|
$ SHOW TIME 27-MAR-2002 09:50:31 $ WRITE SYS$OUTPUT F$CVTIME(,,"DAYOFYEAR") 86 $ WRITE SYS$OUTPUT F$CVTIME(,,"HOUROFYEAR") 2049 $ WRITE SYS$OUTPUT F$CVTIME(,,"MINUTEOFYEAR") 122991 $ WRITE SYS$OUTPUT F$CVTIME(,,"SECONDOFYEAR") 7379476 |
この例では,F$CVTIME は次のようなキーワードの値を戻します。 DAYOFYEAR,HOUROFYEAR,MINUTEOFYEAR,SECONDOFYEAR。
目次 | 索引 |
|