System.SysUtils.FormatDateTime
Delphi
function FormatDateTime(const Format: string; DateTime: TDateTime): string;
function FormatDateTime(const Format: string; DateTime: TDateTime;
const AFormatSettings: TFormatSettings): string;
C++
extern DELPHI_PACKAGE System::UnicodeString __fastcall FormatDateTime(const System::UnicodeString Format, System::TDateTime DateTime)/* overload */;
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
function | public | System.SysUtils.pas System.SysUtils.hpp |
System.SysUtils | System.SysUtils |
説明
TDateTime オブジェクトを整形します。
FormatDateTimeは、DateTime
で指定された TDateTime 値を、Format で指定された書式で整形します。 サポートされる書式文字列に関する情報については、次の表を参照してください。
Format パラメータで指定された文字列が空の場合、TDateTime の値は、書式指定子 c が与えられたものとして整形されます。
FormatDateTime の第 1 の形式は、グローバル変数に含まれているローカライズ情報を使用するため、スレッド セーフではありません。 FormatDateTime の第 2 の形式は、AFormatSettings
パラメータに含まれているローカライズ情報を参照し、スレッド セーフです。 FormatDateTime のスレッド セーフ形式を呼び出す前に、AFormatSettings
にローカライズ情報を入れる必要があります。 AFormatSettings
にデフォルトのローカル値セットを入れるには、TFormatSettings.Create を呼び出します。
日時書式(DateTime Format)文字列は、整形文字列に挿入される各値を表す、指定子から構成されます。 一部の指定子("d" など)は数値や文字列の形式を整えるだけです。 他の指定子("/" など)はグローバル変数からロケール固有の文字列を参照します。
次の表では、指定子が小文字で示されています。 形式では大文字と小文字が区別されませんが、例外は、"am/pm" と "a/p" 指定子です。
指定子 | 表示内容 |
---|---|
c |
ShortDateFormat グローバル変数で指定された形式で日付、それに続いて LongTimeFormat グローバル変数で指定された時刻が表示されます。 時刻が夜の 12 時ちょうどの場合は、時刻部分が表示されません。 |
d |
日付、頭に 0 を付けない数字(1-31)で表示。 |
dd |
日付、頭に 0 を付けた数字(01-31)で表示。 |
ddd |
曜日、ShortDayNames グローバル変数で指定された文字列を使った省略形で表示(Sun-Sat)。 |
dddd |
曜日、LongDayNames グローバル変数で指定された文字列を使った完全名で表示(Sunday-Saturday)。 |
ddddd |
日付、ShortDateFormat グローバル変数で指定された形式で表示。 |
dddddd |
日付、LongDateFormat グローバル変数で指定された形式で表示。 |
E |
(Windows のみ)元号の年数、先頭に 0 を付けない数値で表示(日本語、韓国語、台湾語のロケールのみ)。 |
ee |
(Windows のみ)元号の年数、先頭に 0 を付けた数値で表示(日本語、韓国語、台湾語のロケールのみ)。 |
G |
(Windows のみ)元号、略語で表示(日本語と台湾語のロケールのみ)。 |
gg |
(Windows のみ)元号、完全名で表示(日本語と台湾語のロケールのみ)。 |
m |
月、頭に 0 を付けない数字(1-12)で表示。 この m 指定子が、h や hh 指定子のすぐ後に続いている場合、月ではなく分が表示されます。 |
mm |
月、頭に 0 を付けた数字(01-12)で表示。 この mm 指定子が、h や hh 指定子のすぐ後に続いている場合、月ではなく分が表示されます。 |
mmm |
月名、ShortMonthNames グローバル変数で指定された文字列を使った省略形で表示(Jan-Dec)。 |
mmmm |
月名、LongMonthNames グローバル変数で指定された文字列を使った完全名で表示(January-December)。 |
yy |
年、2 桁で表示(00-99)。 |
yyyy |
年、4 桁で表示(0000-9999)。 |
h |
時間、頭に 0 を付けないで表示(0-23)。 |
hh |
時間、頭に 0 を付けて表示(00-23)。 |
n |
分、頭に 0 を付けないで表示(0-59)。 |
nn |
分、頭に 0 を付けて表示(00-59)。 |
s |
秒、頭に 0 を付けないで表示(0-59)。 |
ss |
秒、頭に 0 を付けて表示(00-59)。 |
Z |
ミリ秒、頭に 0 を付けないで表示(0-999)。 |
zzz |
ミリ秒、頭に 0 を付けて表示(000-999)。 |
t |
時間、ShortTimeFormat グローバル変数で指定された形式で表示。 |
tt |
時間、LongTimeFormat グローバル変数で指定された形式で表示。 |
am/pm |
12 時間制を示すために、h または hh 指定子の前に使用します。午前の場合は 'am'、午後の場合は 'pm' が表示されます。 am/pm 指定子には、小文字、大文字、またはその混合を使用でき、それに従って結果が表示されます。 |
a/p |
12 時間制を示すために、h または hh 指定子の前に使用します。午前の場合は 'a'、午後の場合は 'p' が表示されます。 a/p 指定子には、小文字、大文字、またはその混合を使用でき、それに従って結果が表示されます。 |
ampm |
前にくる h または hh 指定子に 12 時間時計を使用する時間。午前の場合には TimeAMString グローバル変数の内容、午後の場合には TimePMString グローバル変数の内容が続きます。 |
/ |
DateSeparator グローバル変数で指定される、日付区切り文字。 |
: |
TimeSeparator グローバル変数で指定される、時刻区切り文字。 |
'xx' または "xx" |
一重引用符または二重引用符で囲まれた文字は、そのまま表示され、形式指定の影響を受けません。 |