Win32API: GetDateFormat

SYSTEMTIME 構造体が示すシステム タイムの日付を、文字列にフォーマットします。


定義
Declare Function GetDateFormat Lib "kernel32" Alias "GetDateFormatA" _
         (Locale As Long, _
          dwFlags As DWord, _
    ByRef lpDate As SYSTEMTIME, _
          lpFormat As BytePtr, _
          lpDateStr As BytePtr, _
          cchDate As Long) As Long
Locale
ロケールを、以下の定数から指定します。
定数説明
LOCALE_SYSTEM_DEFAULTシステムのデフォルトロケール
LOCALE_USER_DEFAULT現在のユーザーのデフォルトロケール

dwFlags
lpFormat パラメータが NULL のときに、オプション フラグを、以下の定数を組み合わせて指定します。それ以外は 0 を指定します。
定数説明
LOCALE_NOUSEROVERRIDE指定したロケールが持つシステムのデフォルトの日付フォーマットにしたがって、日付をフォーマットします。
DATE_SHORTDATE短い日付フォーマットを使用します(デフォルト)。DATE_LONGDATE とは同時に指定できません。
DATE_LONGDATE長い日付フォーマットを使用します。DATE_SHORTDATE とは同時に指定できません。
DATE_USE_ALT_CALENDARもしあれば、代わりのカレンダーを使用します。

lpDate (ポインタ参照)
システム タイムが格納されている、SYSTEMTIME構造体へのポインタを指定します。NULL を指定すると、現在のローカル システム タイムが使用されます。

lpFormat
dwFlags パラメータが 0 のときに、書式文字列を指定します。それ以外は NULL を指定します。書式文字列は、以下の文字列から成り立ちます。書式文字列以外の文字列は、シングルクォーテーション「'」(Chr$(39))で囲むことをお勧めします。
書式文字列説明
d年月日の日。先頭に 0 は付きません。
dd年月日の日。1 桁の場合、先頭に 0 が付きます。
ddd曜日。ロケールの LOCALE_SABBREVDAYNAME が使われます。
dddd曜日。ロケールの LOCALE_SDAYNAME が使われます。
M年月日の月。先頭に 0 は付きません。
MM年月日の月。1 桁の場合、先頭に 0 が付きます。
MMM年月日の月。ロケールの LOCALE_SABBREVMONTHNAME が使われます。
MMMM年月日の月。ロケールの LOCALE_SMONTHNAME が使われます。
y年月日の年。先頭に 0 は付きません。
yy年月日の年。1 桁の場合、先頭に 0 が付きます。
yyyy年月日の年。4 桁で表されます。
gg「平成」などの時代を示す文字列。ロケールの CAL_SERASTRING が使われます。日付がこの情報を持たないときは、無視されます。

lpDateStr
フォーマットされた文字列を格納するためのバッファへのポインタを指定します。

cchDate
lpDateStr パラメータで指定したバッファのバイト数を指定します。0 を指定すると、フォーマットは行われず、関数は必要なバイト数を返します。

戻り値

関数が成功すると、lpDateStr パラメータで指定したバッファに書き込まれた文字列のバイト数が返ります。cchDate パラメータに 0 を指定したときは、必要なバイト数が返ります。関数が失敗すると、0 が返ります。

環境情報

インクルード ファイル: api_system.sbp 内で定義済み
DLLファイル: kernel32.dll


GetTimeFormat関数SYSTEMTIME構造体