GetTimeFormatEx

時刻を、名前で指定したロケール用の時刻文字列としてフォーマットする。

GetTimeFormatEx lpLocaleName, dwFlags, lpTime, lpFormat, lpTimeStr, cchTime

lpLocaleName : [wstr] ロケール名へのポインタ、または以下の定義済み値のいずれか。
dwFlags : [int] 
lpTime : [var] フォーマットする時刻情報を含む SYSTEMTIME 構造体へのポインタ。関数が現在のローカルシステム時刻を使用する場合、アプリケーションはこのパラメータを NULL に設定できる。
lpFormat : [wstr] 時刻文字列のフォーマットに使用する書式絵へのポインタ。アプリケーションがこのパラメータを NULL に設定すると、関数は指定されたロケールの時刻形式に従って文字列をフォーマットする。アプリケーションがパラメータを NULL に設定しない場合、関数は書式絵文字列で指定されていない情報(たとえばロケール固有の時刻マーカ)にのみロケールを使用する。書式絵文字列の詳細は備考セクションを参照。
lpTimeStr : [wstr] この関数がフォーマット済み時刻文字列を取得するバッファへのポインタ。
cchTime : [int] lpTimeStr が示す時刻文字列バッファのサイズ(文字数)。あるいは、アプリケーションはこのパラメータを 0 に設定できる。その場合、関数は時刻文字列バッファに必要なサイズを返し、lpTimeStr パラメータを使用しない。

(プラグイン / モジュール : kernel32.dll)

解説

時刻を、名前で指定したロケール用の時刻文字列としてフォーマットする。

[戻り値]
lpTimeStr が示すバッファに取得された文字数を返す。cchTime パラメータが 0
に設定されている場合、関数はフォーマット済み時刻文字列を保持するために必要なバッファのサイズ(終端 null
文字を含む)を返す。成功しなかった場合、関数は 0 を返す。拡張エラー情報を取得するには、アプリケーションは GetLastError
を呼ぶ。これは以下のいずれかのエラーコードを返す。
(以下省略)

[備考]
時刻マーカが存在し、TIME_NOTIMEMARKER
フラグが設定されていない場合、関数は指定されたロケール識別子に基づいて時刻マーカをローカライズする。時刻マーカの例は英語(米国)の
"AM" と "PM" である。lpTime
が示す構造体内の時刻値は有効でなければならない。関数は各時刻値が適切な値の範囲内にあるかをチェックする。時刻値のいずれかが正しい範囲外の場合、関数は失敗し、最後のエラーを
ERROR_INVALID_PARAMETER に設定する。関数は SYSTEMTIME 構造体の日付メンバを無視する。これらには
wYear、wMonth、wDayOfWeek、wDay が含まれる。TIME_NOMINUTESORSECONDS または
TIME_NOSECONDS が指定されている場合、関数は分や秒メンバの後に続く区切り文字を削除する。TIME_NOTIMEMARKER
が指定されている場合、関数は時刻マーカの前後の区切り文字を削除する。TIME_FORCE24HOURFORMAT
が指定されている場合、TIME_NOTIMEMARKER
フラグも設定されていない限り、関数は既存の時刻マーカを表示する。関数はフォーマット済み時刻文字列の一部としてミリ秒を含めない。関数は不正な書式文字列に対してエラーを返さず、可能な限り最良の時刻文字列を形成するだけである。時、分、秒、または時刻マーカの書式絵が
2 つを超えて渡された場合、関数は既定で 2 つを使用する。たとえば、有効な時刻マーカ絵は "t" と "tt" のみである。"ttt"
が渡された場合、関数は "tt" と仮定する。実際のフォーマットを行わずに時刻形式を取得するには、アプリケーションは
LOCALE_STIMEFORMAT を指定して GetLocaleInfoEx
関数を使用する必要がある。アプリケーションは以下の要素を使用して書式絵文字列を構築できる。書式文字列内の要素を区切るためにスペースが使用されている場合、これらのスペースは出力文字列の同じ位置に現れる。文字は表示どおり大文字または小文字でなければならない。たとえば
"SS" ではなく "ss"。書式文字列内で単一引用符で囲まれた文字は、出力文字列内の同じ位置に変更されずに現れる。
(以下省略)

情報

プラグイン / モジュールkernel32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の kernel32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_kernel32_gen2.hs