2017年2月20日月曜日

[UWSC]日付時刻を文字列で返す関数 [自作関数]

初心者のプログラミング導入のため、簡単な自作関数を作って公開しているブログ。今回は日付時刻を文字列で返す関数です。

記事の内容

○日付時刻を文字列で返す関数
    戻値(str)=today()
    戻値(str)=time()
    戻値(str)=todaytime()

処理を繰り返し行う場合、ログをファイルとして残していく場合がよくあります。
どんなOSでもファイル名は異なっていなければいけないので、そのときの時刻をファイル名として使ったりします。
以下の関数を使うと簡単にそういったファイル名を作ることができます。

日付時刻を文字列で返す関数

関数の仕様とソースは、
自作関数today R=today()      Rには"20170220"が代入される(2017年2月20日の18時15分22秒に呼び出した場合)
FUNCTION today()//2016年5月4日の場合"20160504"を返す
    GETTIME()
    date=G_TIME_YY4+G_TIME_MM2+G_TIME_DD2
    RESULT=date
FEND

自作関数time R=time()      Rには"181522"が代入される(2017年2月20日の18時15分22秒に呼び出した場合)
FUNCTION time()//20時36分44秒の場合"203644"を返す
    GETTIME()
    time=G_TIME_HH2+G_TIME_NN2+G_TIME_SS2
    RESULT=time
FEND

自作関数todaytime R=todaytime()      Rには"20170220_181522"が代入される(2017年2月20日の18時15分22秒に呼び出した場合)
FUNCTION todaytime()//2016年5月4日20時36分44秒の場合"20160504_203644"を返す
    GETTIME()
    date=G_TIME_YY4+G_TIME_MM2+G_TIME_DD2
    time=G_TIME_HH2+G_TIME_NN2+G_TIME_SS2
    RESULT=date+"_"+time
FEND
呼び出し側からは、例えば、
 fname="Poku_"+time()+".log"
とするとfnameには"Poku_223011.log"と入ります。(コードを実行した時刻が22時30分11秒だった場合)

プログラム中にある命令・関数
G_TIME_YY4 年(西暦)を4桁で取得する
G_TIME_MM2 月を2桁で取得する
G_TIME_DD2 日を2桁で取得する
G_TIME_HH2 時(24時間表記)を2桁で取得する
G_TIME_NN2 分を2桁で取得する
G_TIME_SS2 秒を2桁で取得する
これらはいずれもGETTIME()を行った後で読みに行く必要があります。




記事の内容

記事の内容は伝わりましたでしょうか。
○日付時刻を文字列で返す関数
    戻値(str)=today()
    戻値(str)=time()
    戻値(str)=todaytime()



関数群のダウンロードはこちら
func_poku.uwsのコメント欄に呼び出し方が書いてあります。


【関連記事】  [UWSC]よく使う記号をグローバル宣言
[UWSC]配列の最大要素を返す関数
[UWSC]タイムアウト関数
[UWSC]文字列操作あれこれ2






0 件のコメント:

コメントを投稿