Sun Studio 12: Fortran ライブラリ・リファレンス

1.4.7.1 date_and_time: 日付と時刻の取得

これは、Fortran 95 組み込みルーチンで、2000 年以降も有効です。

date_and_time サブルーチンはリアルタイムクロックと日付のデータを返します。現地時間のほかに、現地時間と世界標準時 (UTC: Universal Coordinated Time) (グリニッジ平均時 (GMT: Greenwich Mean Time) とも呼ぶ) の時差も返します。

date_and_time() サブルーチンは、次のように呼び出します。

call date_and_time( date , time, zone, values )

date

CHARACTER*8

出力 

日付。 書式は CCYYMMDD。 CCYY は 4 桁の年、MM は 2 桁の月、DD は 2 桁の日。例: 19980709 

time

CHARACTER*10

出力 

現在の時刻。書式は hhmmss.sss。hh は時、mm は分、ss.sss は秒とミリ秒 

zone

CHARACTER*5

出力 

UTC を使用した場合の時差。 時分で示す。 書式は hhmm 

values

INTEGER*4 VALUES(8)

出力 

次に説明する 8 要素の整数配列 

INTEGER*4 values に返される 8 つの値は次のとおりです。

VALUES(1)

4 桁の整数の年。たとえば、1998。 

VALUES(2)

1 〜 12 の整数の月。 

VALUES(3)

1 〜 31 の整数の日。 

VALUES(4)

UTC を使用した場合の時差 (分)。 

VALUES(5)

1 〜 23 の整数の時。 

VALUES(6)

1 〜 59 の整数の分。 

VALUES(7)

0 〜 60 の整数の秒。 

VALUES(8)

0 〜 999 の範囲のミリ秒。 

date_and_time の使用例


demo% cat dtm.f
       integer date_time(8)
       character*10 b(3)
       call date_and_time(b(1), b(2), b(3), date_time)
       print *,'date_time    配列の値'
       print *,'年=',date_time(1)
       print *,'month_of_year=',date_time(2)
       print *,'day_of_month=',date_time(3)
       print *,'時差 (分)time difference in minutes=',date_time(4)
       print *,'時=',date_time(5)
       print *,'分=',date_time(6)
       print *,'秒=',date_time(7)
       print *,'ミリ秒=',date_time(8)
       print *, 'DATE=',b(1)
       print *, 'TIME=',b(2)
       print *, 'ZONE=',b(3)
       end

2000 年 2 月 16 日にカリフォルニアで実行した場合の出力は次のとおりです。


 date_time    配列の値:
 年= 2000
 month_of_year= 2
 day_of_month= 16
 時差 (分)= -420
 時= 11
 分= 49
 秒= 29
 ミリ秒= 236
 DATE=20000216
 TIME=114929.236
 ZONE=-0700