dateString関数

本ページには広告が含まれています。

指定された日付を西暦から 和暦 に変換します。

構文
dateString( date )
引数
date 必須
和暦に変換したい日付を西暦で指定
戻り値
和暦に変換した日付を返す

プログラム

UWSC
//////////////////////////////////////////////////
// 【引数】
//   date : 和暦に変換したい日付を西暦で指定
// 【戻り値】
//   和暦に変換した日付を返す
//////////////////////////////////////////////////
FUNCTION dateString(date)
GETTIME(0, date)
DIM y = G_TIME_YY
DIM m = G_TIME_MM
DIM d = G_TIME_DD
DIM dt = ""
SELECT TRUE
CASE GETTIME(0, date) >= GETTIME(0, "2019/05/01")
dt = "令和" + IIF(y - 2018 = 1, "元", y - 2018) + "年"
CASE GETTIME(0, date) >= GETTIME(0, "1989/01/18")
dt = "平成" + IIF(y - 1988 = 1, "元", y -1988) + "年"
CASE GETTIME(0, date) >= GETTIME(0, "1926/12/25")
dt = "昭和" + IIF(y - 1925 = 1, "元", y -1925) + "年"
CASE GETTIME(0, date) >= GETTIME(0, "1912/07/30")
dt = "大正" + IIF(y - 1911 = 1, "元", y - 1911) + "年"
CASE GETTIME(0, date) >= GETTIME(0, "1868/01/25")
dt = "明治" + IIF(y - 1867 = 1, "元", y - 1867) + "年"
SELEND
RESULT = dt + m + "月" + d + "日"
FEND
//////////////////////////////////////////////////
// 【引数】
//   expr : 評価する式
//   truepart : 評価した式がTrueのときに返す値
//   falsepart : 評価した式がFalseのときに返す値
// 【戻り値】
//   truepart : 評価した式がTrueのとき、falsepart : 評価した式がFalseのとき
//////////////////////////////////////////////////
FUNCTION IIF(expr, truepart, falsepart)
IFB EVAL(expr) THEN
RESULT = truepart
ELSE
RESULT = falsepart
ENDIF
FEND

プログラム実行例

今日の日付を和暦で出力

UWSC
PRINT dateString(today())
//////////////////////////////////////////////////
// 【引数】
//   date : 和暦に変換したい日付を西暦で指定
// 【戻り値】
//   和暦に変換した日付を返す
//////////////////////////////////////////////////
FUNCTION dateString(date)
GETTIME(0, date)
DIM y = G_TIME_YY
DIM m = G_TIME_MM
DIM d = G_TIME_DD
DIM dt = ""
SELECT TRUE
CASE GETTIME(0, date) >= GETTIME(0, "2019/05/01")
dt = "令和" + IIF(y - 2018 = 1, "元", y - 2018) + "年"
CASE GETTIME(0, date) >= GETTIME(0, "1989/01/18")
dt = "平成" + IIF(y - 1988 = 1, "元", y -1988) + "年"
CASE GETTIME(0, date) >= GETTIME(0, "1926/12/25")
dt = "昭和" + IIF(y - 1925 = 1, "元", y -1925) + "年"
CASE GETTIME(0, date) >= GETTIME(0, "1912/07/30")
dt = "大正" + IIF(y - 1911 = 1, "元", y - 1911) + "年"
CASE GETTIME(0, date) >= GETTIME(0, "1868/01/25")
dt = "明治" + IIF(y - 1867 = 1, "元", y - 1867) + "年"
SELEND
RESULT = dt + m + "月" + d + "日"
FEND
//////////////////////////////////////////////////
// 【引数】
//   expr : 評価する式
//   truepart : 評価した式がTrueのときに返す値
//   falsepart : 評価した式がFalseのときに返す値
// 【戻り値】
//   truepart : 評価した式がTrueのとき、falsepart : 評価した式がFalseのとき
//////////////////////////////////////////////////
FUNCTION IIF(expr, truepart, falsepart)
IFB EVAL(expr) THEN
RESULT = truepart
ELSE
RESULT = falsepart
ENDIF
FEND
//////////////////////////////////////////////////
// 【引数】
//  
// 【戻り値】
//   今日の日付
//////////////////////////////////////////////////
FUNCTION today()
GETTIME()
RESULT = G_TIME_YY4 + "/" + G_TIME_MM2 + "/" + G_TIME_DD2
FEND
結果
令和7年3月30日
使用関数

関連記事

GETTIME関数 (スクリプト関数)
GETTIMEは日時を取得する関数です。第二引数に指定された基準日から第一引数に指定した日数を加算した値を返します。戻値は2000年1月1日からの秒数です。関数実行後特殊変数に値がセットされ、その特殊変数から日付情報を取得できます。
getWeekdayName関数 (自作関数)
引数で指定した曜日番号に対応する曜日名を返します。
getYear関数 (自作関数)
指定された日付のを返します。
getMonth関数 (自作関数)
指定された日付のを返します。
getDay関数 (自作関数)
指定された日付のを返します。
getWeekday関数 (自作関数)
引数に指定された日付の曜日番号(0:日曜〜6:土曜)を返します。
getEndOfMonth関数 (自作関数)
dateで指定された月の月末日を取得します。
today関数 (自作関数)
今日の日付を返します。
dateValue関数 (自作関数)
日付形式の文字列をシリアル値に変換します。
YMDToJD関数 (自作関数)
グレゴリオ暦ユリウス日に変換します。