前のページ次のページ上に戻るホーム SophiaFramework UNIVERSE 5.3
SFXDate
日時を表すクラスです。
#include <SFXDate.h.hpp>
class SFXDate;
SFMTYPEDEFCLASS(SFXDate)

解説

SFXDate クラスは、内部で 1980 年 1 月 6 日 00:00:00 からの経過時間を秒単位で管理しています。 日付や時刻に対する加減算では、SFXDateDuration クラスも利用できます。

例 817. 日付の定義

SFXDate date1(2008, 12, 18, 11, 20, 35);   // 2008 年 12 月 18 日 11 時 20 分 35 秒
SFXDate date2(2008, 12, 18);               // 2008 年 12 月 18 日  0 時  0 分  0 秒

例 818. 日付の取得

SFXDate date(2008, 12, 18, 11, 20, 35);   // 2008 年 12 月 18 日 11 時 20 分 35 秒
SInt32 n1 = date.GetYear();               // n1 = 2008
SInt32 n2 = date.GetMonth();              // n2 = 12
SInt32 n3 = date.GetDay();                // n3 = 18
SInt32 n4 = date.GetHour();               // n4 = 11
SInt32 n5 = date.GetMinute();             // n5 = 20
SInt32 n6 = date.GetSecond();             // n6 = 35

例 819. 日付の演算

SFXDate date(2008, 12, 18, 11, 20, 35);   // 2008 年 12 月 18 日 11 時 20 分 35 秒
date.AddYear(1);                          // date の年 = 2009
date.AddSecond(30);                       // date の秒 = 5、date の分 = 21
date.SubMonth(30);                        // date の月 = 6、date の年 = 2007
[Caution] 日付の初期値

何も値を設定しない場合、SFXDate クラスの初期値は定義されていません。

SFXDate クラスを使用する場合は、必ず日付(と時刻)を設定してください、

日付だけを設定した場合、時刻(時、分、秒)は 0 時 0 分 0 秒に設定されます。

参照

SFXDateDuration

メンバ

コンストラクタ/デストラクタ
SFXDate( Void )
SFXDate クラスのコンストラクタです。
SFXDate( SFXDateConstRef param )
SFXDate クラスのコンストラクタです。
SFXDate( UInt16 year , UInt16 month , UInt16 day , UInt16 hour , UInt16 minute , UInt16 second )
SFXDate クラスのコンストラクタです。
SFXDate( UInt16 year , UInt16 month , UInt16 day )
SFXDate クラスのコンストラクタです。
SFXDate( UInt32 second )
SFXDate クラスのコンストラクタです。
SFXDate( JulianTypeConstRef julian )
SFXDate クラスのコンストラクタです。
パブリック関数
Void Add( SFXDateDurationConstRef param )
この日時に指定された日時の差を加算します。
Void AddDay( UInt16 param )
この日時に指定された日数を加算します。
Void AddHour( UInt16 param )
この日時に指定された時間数を加算します。
Void AddMinute( UInt16 param )
この日時に指定された分数を加算します。
Void AddMonth( UInt16 param )
この日時に指定された月数を加算します。
Void AddSecond( UInt16 param )
この日時に指定された秒数を加算します。
Void AddYear( UInt16 param )
この日時に指定された年数を加算します。
JulianType AsJulianType( Void )
この日時をユリウス日に変換して返します。
UInt32 AsUInt32( Void )
この日時を 1980 年 1 月 6 日 00:00:00 からの経過時間(秒単位)に変換して返します。
SInt32 Compare( SFXDateConstRef param )
この日時を指定された日時と比較します。
static
SFXDate
CurrentDate( Void )
現在の日付と時刻を取得します。
static
SFXDate
CurrentUTCDate( Void )
UTC における現在の日付と時刻を取得します。
SFXDateDuration DurationTo( SFXDateConstRef param )
この日時から指定された日時までの日時の差を取得します。
Bool Equals( SFXDateConstRef param )
この日時が指定された日時と等しいかどうか判定します。
SFXAnsiString Format( SFXAnsiStringConstRef format )
この日時を指定された書式の文字列に変換して返します。
UInt16 GetDay( Void )
この日時の日を取得します。
DayOfWeekEnum GetDayOfWeek( Void )
この日時の曜日を取得します。
UInt16 GetHour( Void )
この日時の時間を取得します。
UInt16 GetMinute( Void )
この日時の分を取得します。
UInt16 GetMonth( Void )
この日時の月を取得します。
UInt16 GetSecond( Void )
この日時の秒を取得します。
UInt16 GetYear( Void )
この日時の年を取得します。
SFCError Parse( SFXAnsiStringConstRef format , SFXAnsiStringConstRef string )
指定された文字列を指定された書式に従って日付に変換し、この日時に設定します。
Void Set( SFXDateConstRef param )
この日時を指定された値に設定します。
Void Set( UInt16 year , UInt16 month , UInt16 day , UInt16 hour , UInt16 minute , UInt16 second )
この日時を指定された値に設定します。
Void Set( UInt16 year , UInt16 month , UInt16 day )
この日時を指定された値に設定します。
Void Set( UInt32 second )
この日時を指定された値に設定します。
Void Set( JulianTypeConstRef julian )
この日時を指定された値に設定します。
Void SetDate( UInt16 year , UInt16 month , UInt16 day )
この日時の日付(年、月、日)を指定された値に設定します。
Void SetDay( UInt16 param )
この日時の日を指定された値に設定します。
Void SetHour( UInt16 param )
この日時の時間を指定された値に設定します。
Void SetMinute( UInt16 param )
この日時の分を指定された値に設定します。
Void SetMonth( UInt16 param )
この日時の月を指定された値に設定します。
Void SetSecond( UInt16 param )
この日時の秒を指定された値に設定します。
Void SetTime( UInt16 hour , UInt16 minute , UInt16 second )
この日時の時刻(時、分、秒)を指定された値に設定します。
Void SetYear( UInt16 param )
この日時の年を指定された値に設定します。
Void Sub( SFXDateDurationConstRef param )
この日時から指定された日時の差を減算します。
Void SubDay( UInt16 param )
この日時から指定された日数を減算します。
Void SubHour( UInt16 param )
この日時から指定された時間数を減算します。
Void SubMinute( UInt16 param )
この日時から指定された分数を減算します。
Void SubMonth( UInt16 param )
この日時から指定された月数を減算します。
Void SubSecond( UInt16 param )
この日時から指定された秒数を減算します。
Void SubYear( UInt16 param )
この日時から指定された年数を減算します。
static
SFXDateConstRef
ZeroInstance( Void )
0 を表すインスタンスを取得します。
SFXDateRef operator+=( SFXDateDurationConstRef param )
左側の日時に右側の時間を加算します。
SFXDateRef operator-=( SFXDateDurationConstRef param )
左側の日時から右側の時間を減算します。
SFXDateRef operator=( SFXDateConstRef param )
左側の日時に右側の日時を代入します。
Bool operator==( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時と等しいか判定します。
Bool operator>=( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時以上であるか判定します。
Bool operator>( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時よりも大きいか判定します。
Bool operator<=( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時以下であるか判定します。
Bool operator<( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時よりも小さいか判定します。
SFXDate operator-( SFXDateConstRef left , SFXDateDurationConstRef right )
左側の日時から右側の時間を減算した日時を返します。
SFXDateDuration operator-( SFXDateConstRef left , SFXDateConstRef right )
左側の日時から右側の時間を減算した日時を返します。
Bool operator!=( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時と異なるか判定します。
SFXDate operator+( SFXDateConstRef left , SFXDateDurationConstRef right )
左側の日時に右側の時間を加算した日時を返します。
DayOfWeekEnum
曜日を表す定数です。
グローバル関数
Bool operator==( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時と等しいか判定します。
Bool operator>=( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時以上であるか判定します。
Bool operator>( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時よりも大きいか判定します。
Bool operator<=( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時以下であるか判定します。
Bool operator<( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時よりも小さいか判定します。
SFXDate operator-( SFXDateConstRef left , SFXDateDurationConstRef right )
左側の日時から右側の時間を減算した日時を返します。
SFXDateDuration operator-( SFXDateConstRef left , SFXDateConstRef right )
左側の日時から右側の時間を減算した日時を返します。
Bool operator!=( SFXDateConstRef left , SFXDateConstRef right )
左側の日時が右側の日時と異なるか判定します。
SFXDate operator+( SFXDateConstRef left , SFXDateDurationConstRef right )
左側の日時に右側の時間を加算した日時を返します。

SFXDate::SFXDate
SFXDate クラスのコンストラクタです。
[ public, explicit ]
SFXDate(Void);
[ public ]
SFXDate(
    SFXDateConstRef param   // 元になる日時
);
[ public, explicit ]
SFXDate(
    UInt16 year     // 年
    UInt16 month    // 月
    UInt16 day      // 日
    UInt16 hour     // 時
    UInt16 minute   // 分
    UInt16 second   // 秒
);
[ public, explicit ]
SFXDate(
    UInt16 year    // 年
    UInt16 month   // 月
    UInt16 day     // 日
);
[ public, explicit ]
SFXDate(
    UInt32 second   // 1980 年 1 月 6 日 00:00:00 から経過した秒数
);
[ public, explicit ]
SFXDate(
    JulianTypeConstRef julian   // ユリウス日
);

参照

SFXDate::Set | SFXDate::operator=


SFXDate::Add
この日時に指定された日時の差を加算します。
[ public ]
Void Add(
    SFXDateDurationConstRef param   // 日時の差
);

解説

この関数は、この日時に指定された日時の差を加算します。

参照

SFXDateDuration | SFXDate::AddDay | SFXDate::AddHour | SFXDate::AddMinute | SFXDate::AddMonth | SFXDate::AddSecond | SFXDate::AddYear | SFXDate::Sub


SFXDate::AddDay
この日時に指定された日数を加算します。
[ public ]
Void AddDay(
    UInt16 param   // 加算する日数
);

解説

この関数は、この日時に指定された日数を加算します。

参照

SFXDate::Add | SFXDate::AddHour | SFXDate::AddMinute | SFXDate::AddMonth | SFXDate::AddSecond | SFXDate::AddYear | SFXDate::SubDay


SFXDate::AddHour
この日時に指定された時間数を加算します。
[ public ]
Void AddHour(
    UInt16 param   // 時間
);

解説

この関数は、この日時に指定された時間数を加算します。

参照

SFXDate::Add | SFXDate::AddDay | SFXDate::AddMinute | SFXDate::AddMonth | SFXDate::AddSecond | SFXDate::AddYear | SFXDate::SubHour


SFXDate::AddMinute
この日時に指定された分数を加算します。
[ public ]
Void AddMinute(
    UInt16 param   // 加算する値
);

解説

この関数は、この日時に指定された分数を加算します。

参照

SFXDate::Add | SFXDate::AddDay | SFXDate::AddHour | SFXDate::AddMonth | SFXDate::AddSecond | SFXDate::AddYear | SFXDate::SubMinute


SFXDate::AddMonth
この日時に指定された月数を加算します。
[ public ]
Void AddMonth(
    UInt16 param   // 加算する値
);

解説

この関数は、この日時に指定された月数を加算します。

参照

SFXDate::Add | SFXDate::AddDay | SFXDate::AddHour | SFXDate::AddMinute | SFXDate::AddSecond | SFXDate::AddYear | SFXDate::SubMonth


SFXDate::AddSecond
この日時に指定された秒数を加算します。
[ public ]
Void AddSecond(
    UInt16 param   // 加算する値
);

解説

この関数は、この日時に指定された秒数を加算します。

参照

SFXDate::Add | SFXDate::AddDay | SFXDate::AddHour | SFXDate::AddMinute | SFXDate::AddMonth | SFXDate::AddYear | SFXDate::SubSecond


SFXDate::AddYear
この日時に指定された年数を加算します。
[ public ]
Void AddYear(
    UInt16 param   // 加算する値
);

解説

この関数は、この日時に指定された年数を加算します。

参照

SFXDate::Add | SFXDate::AddDay | SFXDate::AddHour | SFXDate::AddMinute | SFXDate::AddMonth | SFXDate::AddSecond | SFXDate::SubYear


SFXDate::AsJulianType
この日時をユリウス日に変換して返します。
[ public, const ]
JulianType AsJulianType(Void);

戻り値

変換後のユリウス日

解説

この関数は、この日時をユリウス日に変換して返します。


SFXDate::AsUInt32
この日時を 1980 年 1 月 6 日 00:00:00 からの経過時間(秒単位)に変換して返します。
[ public, const ]
UInt32 AsUInt32(Void);

戻り値

変換後の 1980 年 1 月 6 日 00:00:00 からの経過時間(秒単位)

解説

この関数は、この日時を 1980 年 1 月 6 日 00:00:00 からの経過時間(秒単位)に変換して返します。

参照

SFXDate::Format


SFXDate::Compare
この日時を指定された日時と比較します。
[ public, const ]
SInt32 Compare(
    SFXDateConstRef param   // 比較対象の日時
);

戻り値

  • この日時を指定された日時よりも大きいとき: 正の値
  • この日時を指定された日時よりと等しいとき: 0
  • この日時を指定された日時よりも小さいとき: 負の値

解説

この関数は、この日時を指定された日時と比較します。


SFXDate::CurrentDate
現在の日付と時刻を取得します。
[ public, static ]
SFXDate CurrentDate(Void);

戻り値

現在の日付と時刻

解説

この関数は、現在の日付と時刻を取得します。

使用例

date = SFXDate::CurrentDate();

参照

SFXDate::CurrentUTCDate


SFXDate::CurrentUTCDate
UTC における現在の日付と時刻を取得します。
[ public, static ]
SFXDate CurrentUTCDate(Void);

戻り値

UTC における現在の日付と時刻

解説

この関数は、UTC における現在の日付と時刻を取得します。

参照

SFXDate::CurrentDate


SFXDate::DurationTo
この日時から指定された日時までの日時の差を取得します。
[ public, const ]
SFXDateDuration DurationTo(
    SFXDateConstRef param   // 対象となる日時
);

戻り値

指定された日時までの日時の差

解説

この関数は、この日時から指定された日時までの日時の差を取得します。

参照

SFXDateDuration


SFXDate::Equals
この日時が指定された日時と等しいかどうか判定します。
[ public, const ]
Bool Equals(
    SFXDateConstRef param   // 比較対象の日時
);

戻り値

  • 等しいとき: true
  • そうでないとき: false

解説

この関数は、この日時が指定された日時と等しいかどうか判定します。

参照

operator== | operator!=


SFXDate::Format
この日時を指定された書式の文字列に変換して返します。
[ public, const ]
SFXAnsiString Format(
    SFXAnsiStringConstRef format   // 書式
);

引数

format

書式を指定します。指定できる書式には、以下のものがあります。

Y     - N 桁年数
YY    - 2 桁の年数
YYYY  - 4 桁の年数
M     - N 桁の月数
MM    - 2 桁の月数
D     - N 桁の日数
DD    - 2 桁の日数
h     - N 桁の時間 0 ~ 23
hh    - 2 桁の時間 00 ~ 23
H     - N 桁の時間 1 ~ 12
HH    - 2 桁の時間 01 ~ 12
m     - N 桁の分
mm    - 2 桁の分
s     - N 桁の秒
ss    - 2 桁の秒
A     - AM / PM
a     - am / pm
MONTH - 月の名前(フルネーム・全大文字)
Month - 月の名前(フルネーム・先頭大文字)
month - 月の名前(フルネーム・全小文字)
MTH   - 月の名前( 3 文字・全大文字)
Mth   - 月の名前( 3 文字・先頭大文字)
mth   - 月の名前( 3 文字・全小文字)
WEEK  - 曜日(フルネーム・全大文字)
Week  - 曜日(フルネーム・先頭大文字)
week  - 曜日(フルネーム・全小文字)
WEK   - 曜日( 3 文字・全大文字)
Wek   - 曜日( 3 文字・先頭大文字)
wek   - 曜日( 3 文字・全小文字)
y    - 曜日(日本語)
%x   - 文字 'x'

この他、アルファベット・数字以外の任意の文字が利用できます。

アルファベットを利用するには、'%' でエスケープします。

空白文字が並んでいる場合は、書式指定文字列での空白文字数以上の並びがあれば、空白文字を読み飛ばします。

文字数が少ない場合は、エラーとなります。

戻り値

指定された書式のこの日時

解説

この関数は、この日時を指定された書式の文字列に変換して返します。

使用例

SFXAnsiString string1, string2;
SFXDate date(2010, 3, 9, 14, 12, 50);

string1 = date.Format("YYYY/MM/DD hh:mm:ss"); // string1 = "2010/03/09 14:12:50"
string2 = date.Format(""DD Mth, YY");         // string2 = "09 Mar, 10"

参照

SFXDate::AsUInt32 | SFXDate::Parse


SFXDate::GetDay
この日時の日を取得します。
[ public, const ]
UInt16 GetDay(Void);

戻り値

この日時の日

解説

この関数は、この日時の日を取得します。

参照

SFXDate::GetDayOfWeek | SFXDate::GetHour | SFXDate::GetMinute | SFXDate::GetMonth | SFXDate::GetSecond | SFXDate::GetYear | SFXDate::SetDay


SFXDate::GetDayOfWeek
この日時の曜日を取得します。
[ public, const ]
DayOfWeekEnum GetDayOfWeek(Void);

戻り値

この日時の曜日(SFXDate::DayOfWeekEnum 型)

解説

この関数は、この日時の曜日を取得します。

参照

SFXDate::DayOfWeekEnum


SFXDate::GetHour
この日時の時間を取得します。
[ public, const ]
UInt16 GetHour(Void);

戻り値

この日時の時間

解説

この関数は、この日時の時間を取得します。

参照

SFXDate::GetDay | SFXDate::GetDayOfWeek | SFXDate::GetMinute | SFXDate::GetMonth | SFXDate::GetSecond | SFXDate::GetYear | SFXDate::SetHour


SFXDate::GetMinute
この日時の分を取得します。
[ public, const ]
UInt16 GetMinute(Void);

戻り値

この日時の分

解説

この関数は、この日時の分を取得します。

参照

SFXDate::GetDay | SFXDate::GetDayOfWeek | SFXDate::GetHour | SFXDate::GetMonth | SFXDate::GetSecond | SFXDate::GetYear | SFXDate::SetMinute


SFXDate::GetMonth
この日時の月を取得します。
[ public, const ]
UInt16 GetMonth(Void);

戻り値

この日時の月

解説

この関数は、この日時の月を取得します。

参照

SFXDate::GetDay | SFXDate::GetDayOfWeek | SFXDate::GetHour | SFXDate::GetMinute | SFXDate::GetSecond | SFXDate::GetYear | SFXDate::SetMonth


SFXDate::GetSecond
この日時の秒を取得します。
[ public, const ]
UInt16 GetSecond(Void);

戻り値

この日時の秒

解説

この関数は、この日時の秒を取得します。

参照

SFXDate::GetDay | SFXDate::GetDayOfWeek | SFXDate::GetHour | SFXDate::GetMinute | SFXDate::GetMonth | SFXDate::GetYear | SFXDate::SetSecond


SFXDate::GetYear
この日時の年を取得します。
[ public, const ]
UInt16 GetYear(Void);

戻り値

この日時の年

解説

この関数は、この日時の年を取得します。

参照

SFXDate::GetDay | SFXDate::GetDayOfWeek | SFXDate::GetHour | SFXDate::GetMinute | SFXDate::GetMonth | SFXDate::GetSecond | SFXDate::SetYear


SFXDate::Parse
指定された文字列を指定された書式に従って日付に変換し、この日時に設定します。
[ public ]
SFCError Parse(
    SFXAnsiStringConstRef format   // 書式
    SFXAnsiStringConstRef string   // 変換対象文字列
);

引数

format

書式を指定します。指定できる書式には、以下のものがあります。

Y     - N 桁年数
YY    - 2 桁の年数
YYYY  - 4 桁の年数
M     - N 桁の月数
MM    - 2 桁の月数
D     - N 桁の日数
DD    - 2 桁の日数
h     - N 桁の時間 0 ~ 23
hh    - 2 桁の時間 00 ~ 23
H     - N 桁の時間 1 ~ 12
HH    - 2 桁の時間 01 ~ 12
m     - N 桁の分
mm    - 2 桁の分
s     - N 桁の秒
ss    - 2 桁の秒
A     - AM / PM
a     - am / pm
MONTH - 月の名前(フルネーム・全大文字)
Month - 月の名前(フルネーム・先頭大文字)
month - 月の名前(フルネーム・全小文字)
MTH   - 月の名前( 3 文字・全大文字)
Mth   - 月の名前( 3 文字・先頭大文字)
mth   - 月の名前( 3 文字・全小文字)
WEEK  - 曜日(フルネーム・全大文字)
Week  - 曜日(フルネーム・先頭大文字)
week  - 曜日(フルネーム・全小文字)
WEK   - 曜日( 3 文字・全大文字)
Wek   - 曜日( 3 文字・先頭大文字)
wek   - 曜日( 3 文字・全小文字)
y    - 曜日(日本語)
%x   - 文字 'x'

この他、アルファベット・数字以外の任意の文字が利用できます。

アルファベットを利用するには、'%' でエスケープします。

空白文字が並んでいる場合は、書式指定文字列での空白文字数以上の並びがあれば、空白文字を読み飛ばします。

文字数が少ない場合は、エラーとなります。

string

日付に変換する文字列を取得します。

戻り値

  • 成功したとき: SFERR_NO_ERROR
  • 書式が間違っているとき: SFERR_INVALID_FORMAT
  • メモリ不足のとき: SFERR_NO_MEMORY

解説

この関数は、指定された文字列を指定された書式に従って日付に変換し、この日付に設定します。

使用例

SFXDate date;

// 文字列 "2006/06/15 15:13:30" を書式 "YYYY/MM/DD hh:mm:ss" に従って日付に変換する
date.Parse("YYYY/MM/DD hh:mm:ss", "2006/06/15 15:13:30");

// %M で文字 'M' を表す
// 複数の空白は 1 つとみなされる
date.Parse("%M%y = YYYY/MM/DD hh:mm:ss", "My   =  2006/06/15 15:13:30");

参照

SFXDate::AsUInt32 | SFXDate::Format


SFXDate::Set
この日時を指定された値に設定します。
[ public ]
Void Set(
    SFXDateConstRef param   // 設定する日時 ( SFXDate )
);
[ public ]
Void Set(
    UInt16 year     // 年
    UInt16 month    // 月
    UInt16 day      // 日
    UInt16 hour     // 時
    UInt16 minute   // 分
    UInt16 second   // 秒
);
[ public ]
Void Set(
    UInt16 year    // 年
    UInt16 month   // 月
    UInt16 day     // 日
);
[ public ]
Void Set(
    UInt32 second   // 1980 年 1 月 6 日 00:00:00 から経過した秒数
);
[ public ]
Void Set(
    JulianTypeConstRef julian   // ユリウス日
);

解説

この関数は、この日時を指定された値に設定します。

[Note] 注意

年、月、日の 3 つの引数をとるものについては、時、分、秒はすべて 0 に設定されます。

参照

SFXDate::SetDate | SFXDate::SetDay | SFXDate::SetHour | SFXDate::SetMinute | SFXDate::SetMonth | SFXDate::SetSecond | SFXDate::SetTime | SFXDate::SetYear | SFXDate::operator=


SFXDate::SetDate
この日時の日付(年、月、日)を指定された値に設定します。
[ public ]
Void SetDate(
    UInt16 year    // 年
    UInt16 month   // 月
    UInt16 day     // 日
);

解説

この関数は、この日時の日付(年、月、日)を指定された値に設定します。

month は 0 〜 13 の値を設定できます。month は 0 の場合は 1 となります。 month の値が 13 の場合は year の値が + 1 だけ加算され、month の値は 1 になります。

day は 0 以上の値を設定できます。day を 0 に設定すると、先月の末日の日付になります。

時刻(時、分、秒)は、0 時 0 分 0 秒で設定されます。

使用例

year 年 month 月の末日の日付を求めるコードは以下の通りです。

SFXDate date;
UInt16 year, month;

// year 年 month 月の最後の日付を取得する
date.Set(year, month + 1, 0);
// 日付を "YYYY/MM/DD" の書式で出力する
TRACE("The Date = %s", date.Format("YYYY/MM/DD").GetCString());

参照

SFXDate::Set | SFXDate::SetDay | SFXDate::SetHour | SFXDate::SetMinute | SFXDate::SetMonth | SFXDate::SetSecond | SFXDate::SetTime | SFXDate::SetYear


SFXDate::SetDay
この日時の日を指定された値に設定します。
[ public ]
Void SetDay(
    UInt16 param   // 設定する値
);

解説

この関数は、この日時の日を指定された値に設定します。

参照

SFXDate::GetDay | SFXDate::Set | SFXDate::SetDate | SFXDate::SetHour | SFXDate::SetMinute | SFXDate::SetMonth | SFXDate::SetSecond | SFXDate::SetTime | SFXDate::SetYear


SFXDate::SetHour
この日時の時間を指定された値に設定します。
[ public ]
Void SetHour(
    UInt16 param   // 時間
);

解説

この関数は、この日時の時間を指定された値に設定します。

参照

SFXDate::GetHour | SFXDate::Set | SFXDate::SetDate | SFXDate::SetDay | SFXDate::SetMinute | SFXDate::SetMonth | SFXDate::SetSecond | SFXDate::SetTime | SFXDate::SetYear


SFXDate::SetMinute
この日時の分を指定された値に設定します。
[ public ]
Void SetMinute(
    UInt16 param   // 分
);

解説

この関数は、この日時の分を指定された値に設定します。

参照

SFXDate::GetMinute | SFXDate::Set | SFXDate::SetDate | SFXDate::SetDay | SFXDate::SetHour | SFXDate::SetMonth | SFXDate::SetSecond | SFXDate::SetTime | SFXDate::SetYear


SFXDate::SetMonth
この日時の月を指定された値に設定します。
[ public ]
Void SetMonth(
    UInt16 param   // 月
);

解説

この関数は、この日時の月を指定された値に設定します。

参照

SFXDate::GetMonth | SFXDate::Set | SFXDate::SetDate | SFXDate::SetDay | SFXDate::SetHour | SFXDate::SetMinute | SFXDate::SetSecond | SFXDate::SetTime | SFXDate::SetYear


SFXDate::SetSecond
この日時の秒を指定された値に設定します。
[ public ]
Void SetSecond(
    UInt16 param   // 秒
);

解説

この関数は、この日時の秒を指定された値に設定します。

参照

SFXDate::GetSecond | SFXDate::Set | SFXDate::SetDate | SFXDate::SetDay | SFXDate::SetHour | SFXDate::SetMinute | SFXDate::SetMonth | SFXDate::SetTime | SFXDate::SetYear


SFXDate::SetTime
この日時の時刻(時、分、秒)を指定された値に設定します。
[ public ]
Void SetTime(
    UInt16 hour     // 時
    UInt16 minute   // 分
    UInt16 second   // 秒
);

解説

この関数は、この日時の時刻(時、分、秒)を指定された値に設定します。

hour に 24 以上、minute と second に 60 以上の値を指定することも可能です。 内部的に 1980 年 1 月 6 日 00:00:00 からの経過時間に変換されて、 正しい日付・時刻に自動的に変換されて設定されます。

たとえば、25 時 0 分 0 秒 を指定すると、内部的に日付の値が 1 日だけ増え、時刻は 1 時 0 分 0 秒に設定されます。

参照

SFXDate::Set | SFXDate::SetDate | SFXDate::SetDay | SFXDate::SetHour | SFXDate::SetMinute | SFXDate::SetMonth | SFXDate::SetSecond | SFXDate::SetYear


SFXDate::SetYear
この日時の年を指定された値に設定します。
[ public ]
Void SetYear(
    UInt16 param   // 設定する値
);

解説

この関数は、この日時の年を指定された値に設定します。

参照

SFXDate::GetYear | SFXDate::Set | SFXDate::SetDate | SFXDate::SetDay | SFXDate::SetHour | SFXDate::SetMinute | SFXDate::SetMonth | SFXDate::SetSecond | SFXDate::SetTime


SFXDate::Sub
この日時から指定された日時の差を減算します。
[ public ]
Void Sub(
    SFXDateDurationConstRef param   // 日時の差
);

解説

この関数は、この日時から指定された日時の差を減算します。

参照

SFXDateDuration | SFXDate::Add | SFXDate::SubDay | SFXDate::SubHour | SFXDate::SubMinute | SFXDate::SubMonth | SFXDate::SubSecond | SFXDate::SubYear |


SFXDate::SubDay
この日時から指定された日数を減算します。
[ public ]
Void SubDay(
    UInt16 param   // 減算する日数
);

解説

この関数は、この日時から指定された日数を減算します。

参照

SFXDate::AddDay | SFXDate::Sub | SFXDate::SubHour | SFXDate::SubMinute | SFXDate::SubMonth | SFXDate::SubSecond | SFXDate::SubYear


SFXDate::SubHour
この日時から指定された時間数を減算します。
[ public ]
Void SubHour(
    UInt16 param   // 減算する時間数
);

解説

この関数は、この日時から指定された時間数を減算します。

参照

SFXDate::AddHour | SFXDate::Sub | SFXDate::SubDay | SFXDate::SubMinute | SFXDate::SubMonth | SFXDate::SubSecond | SFXDate::SubYear


SFXDate::SubMinute
この日時から指定された分数を減算します。
[ public ]
Void SubMinute(
    UInt16 param   // 減算する分数
);

解説

この関数は、この日時から指定された分数を減算します。

参照

SFXDate::AddMinute | SFXDate::Sub | SFXDate::SubDay | SFXDate::SubHour | SFXDate::SubMonth | SFXDate::SubSecond | SFXDate::SubYear


SFXDate::SubMonth
この日時から指定された月数を減算します。
[ public ]
Void SubMonth(
    UInt16 param   // 減算する月数
);

解説

この関数は、この日時から指定された月数を減算します。

参照

SFXDate::AddMonth | SFXDate::Sub | SFXDate::SubDay | SFXDate::SubHour | SFXDate::SubMinute | SFXDate::SubSecond | SFXDate::SubYear


SFXDate::SubSecond
この日時から指定された秒数を減算します。
[ public ]
Void SubSecond(
    UInt16 param   // 減算する秒数
);

解説

この関数は、この日時から指定された秒数を減算します。

参照

SFXDate::AddSecond | SFXDate::Sub | SFXDate::SubDay | SFXDate::SubHour | SFXDate::SubMinute | SFXDate::SubMonth | SFXDate::SubYear


SFXDate::SubYear
この日時から指定された年数を減算します。
[ public ]
Void SubYear(
    UInt16 param   // 減算する年数
);

解説

この関数は、この日時から指定された年数を減算します。

参照

SFXDate::AddYear | SFXDate::Sub | SFXDate::SubDay | SFXDate::SubHour | SFXDate::SubMinute | SFXDate::SubMonth | SFXDate::SubSecond


SFXDate::ZeroInstance
0 を表すインスタンスを取得します。
[ public, static ]
SFXDateConstRef ZeroInstance(Void);

戻り値

0 を表すインスタンス

解説

この関数は、0 を表すインスタンスを取得します。

[Note] 注意

コンストラクタの SFXDate(0) と同じ結果を返しますが、 この関数の方が高速に動作します。

参照

SFXDate::SFXDate


SFXDate::operator=
左側の日時に右側の日時を代入します。
[ public ]
SFXDateRef operator=(
    SFXDateConstRef param   // 右側の日時
);

戻り値

代入後の左側の日時

解説

このオペレーターは、左側の日時に右側の日時を代入します。

[Note] 注意

このオペレーターは左側の日時に影響を及ぼします。

参照

SFXDate::Set


operator==
左側の日時が右側の日時と等しいか判定します。
[ public, friend ]
Bool operator==(
    SFXDateConstRef left    // 左側の日時
    SFXDateConstRef right   // 右側の日時
);

戻り値

  • 等しいとき: true
  • そうでないとき: false

解説

このオペレーターは、左側の日時が右側の日時と等しいか判定します。

参照

SFXDate::Equals | operator!=


operator>=
左側の日時が右側の日時以上であるか判定します。
[ public, friend ]
Bool operator>=(
    SFXDateConstRef left    // 左側の日時
    SFXDateConstRef right   // 右側の日時
);

戻り値

  • 左側の日時が右側の日時以上であるとき: true
  • そうでないとき: false

解説

このオペレーターは、左側の日時が右側の日時以上であるか判定します。

参照

SFXDate::Compare | operator== | operator> | operator< | operator<=


operator>
左側の日時が右側の日時よりも大きいか判定します。
[ public, friend ]
Bool operator>(
    SFXDateConstRef left    // 左側の日時
    SFXDateConstRef right   // 右側の日時
);

戻り値

  • 左側の日時が右側の日時よりも大きいとき: true
  • そうでないとき: false

解説

このオペレーターは、左側の日時が右側の日時よりも大きいか判定します。

参照

SFXDate::Compare | operator== | operator>= | operator< | operator<=


operator<=
左側の日時が右側の日時以下であるか判定します。
[ public, friend ]
Bool operator<=(
    SFXDateConstRef left    // 左側の日時
    SFXDateConstRef right   // 右側の日時
);

戻り値

  • 左側の日時が右側の日時以下であるとき: true
  • そうでないとき: false

解説

このオペレーターは、左側の日時が右側の日時以下であるか判定します。

参照

SFXDate::Compare | operator< | operator== | operator> | operator>=


operator<
左側の日時が右側の日時よりも小さいか判定します。
[ public, friend ]
Bool operator<(
    SFXDateConstRef left    // 左側の日時
    SFXDateConstRef right   // 右側の日時
);

戻り値

  • 左側の日時が右側の日時よりも小さいとき: true
  • そうでないとき: false

解説

このオペレーターは、左側の日時が右側の日時よりも小さいか判定します。

参照

SFXDate::Compare | operator<= | operator== | operator> | operator>=


SFXDate::operator-=
左側の日時から右側の時間を減算します。
[ public ]
SFXDateRef operator-=(
    SFXDateDurationConstRef param   // 右側の時間(SFXDateDuration 型)
);

戻り値

左側の日時から右側の時間を減算した後の左側の日時

解説

このオペレーターは、 左側の日時から右側の時間を減算します。

[Note] 注意

このオペレーターは左側の日時に影響を及ぼします。

参照

SFXDate::Sub | operator- | operator+ | SFXDate::operator+= | SFXDateDuration


operator-
左側の日時から右側の時間を減算した日時を返します。
[ public, friend ]
SFXDate operator-(
    SFXDateConstRef left            // 左側の日時
    SFXDateDurationConstRef right   // 右側の時間(SFXDateDuration 型)
);
[ public, friend ]
SFXDateDuration operator-(
    SFXDateConstRef left    // 左側の日時
    SFXDateConstRef right   // 右側の時間(SFXDate 型)
);

戻り値

左側の日時から右側の時間を減算した日時

解説

このオペレーターは、 左側の日時から右側の時間を減算した日時をコピーして返します。

右側の時間が SFXDate 型の場合、1980 年 1 月 6 日 00:00:00 から経過した秒数の時間を減算します。

[Note] 注意

このオペレーターは左側の日時に影響を及ぼしません。

参照

SFXDate::Sub | SFXDate::operator-= | operator+ | SFXDate::operator+= | SFXDateDuration


operator!=
左側の日時が右側の日時と異なるか判定します。
[ public, friend ]
Bool operator!=(
    SFXDateConstRef left    // 左側の日時
    SFXDateConstRef right   // 右側の日時
);

戻り値

  • 異なるとき: true
  • そうでないとき: false

解説

このオペレーターは、左側の日時が右側の日時と異なるか判定します。

参照

SFXDate::Equals | operator==


SFXDate::operator+=
左側の日時に右側の時間を加算します。
[ public ]
SFXDateRef operator+=(
    SFXDateDurationConstRef param   // 右側の時間(SFXDateDuration 型)
);

戻り値

左側の日時に右側の時間を加算した後の左側の日時

解説

このオペレーターは、 左側の日時に右側の時間を加算します。

[Note] 注意

このオペレーターは左側の日時に影響を及ぼします。

参照

SFXDate::Add | operator+ | operator- | SFXDate::operator-= | SFXDateDuration


operator+
左側の日時に右側の時間を加算した日時を返します。
[ public, friend ]
SFXDate operator+(
    SFXDateConstRef left            // 左側の日時
    SFXDateDurationConstRef right   // 右側の時間(SFXDateDuration 型)
);

戻り値

左側の日時に右側の時間を加算した日時

解説

このオペレーターは、 左側の日時に右側の時間を加算した日時をコピーして返します。

[Note] 注意

このオペレーターは左側の日時に影響を及ぼしません。

参照

SFXDate::Add | operator- | SFXDate::operator-= | SFXDate::operator+= | SFXDateDuration


SFXDate::DayOfWeekEnum
曜日を表す定数です。
enum DayOfWeekEnum {
  DAYOFWEEK_MONDAY = 0,
  DAYOFWEEK_TUESDAY,
  DAYOFWEEK_WEDNESDAY,
  DAYOFWEEK_THURSDAY,
  DAYOFWEEK_FRIDAY,
  DAYOFWEEK_SATURDAY,
  DAYOFWEEK_SUNDAY
};

解説

主に SFXDate::GetDayOfWeek 関数で使います。

定数の意味は次の通りです。

定数 (値) 意味
DAYOFWEEK_MONDAY (0) 月曜日
DAYOFWEEK_TUESDAY (1) 火曜日
DAYOFWEEK_WEDNESDAY (2) 水曜日
DAYOFWEEK_THURSDAY (3) 木曜日
DAYOFWEEK_FRIDAY (4) 金曜日
DAYOFWEEK_SATURDAY (5) 土曜日
DAYOFWEEK_SUNDAY (6) 日曜日

参照

SFXDate::GetDayOfWeek