ARTSAT API  2.7.1
 全て クラス ファイル 関数 変数 型定義 列挙型 列挙型の値 マクロ定義 ページ
クラス ofxSATTime

時刻を表現するクラス [詳細]

Public 型

enum  DayOfWeekEnum {
  DAYOFWEEK_SUNDAY, DAYOFWEEK_MONDAY, DAYOFWEEK_TUESDAY, DAYOFWEEK_WEDNESDAY,
  DAYOFWEEK_THURSDAY, DAYOFWEEK_FRIDAY, DAYOFWEEK_SATURDAY
}
 

Public メソッド

 ofxSATTime (void)
 
 ofxSATTime (ofxSATTime const &param)
 
 ofxSATTime (int year, int month, int day, int hour, int minute, int second)
 
 ofxSATTime (int year, int day, int hour, int minute, int second)
 
 ofxSATTime (int year, int hour, int minute, int second)
 
 ofxSATTime (int year, int minute, int second)
 
 ofxSATTime (int year, int second)
 
 ofxSATTime (time_t param)
 
 ~ofxSATTime (void)
 
ofxSATTimeoperator= (ofxSATTime const &param)
 
ofxSATTimeoperator+= (ofxSATTimeDiff const &param)
 
ofxSATTimeoperator-= (ofxSATTimeDiff const &param)
 
ofxSATTimeset (ofxSATTime const &param)
 
ofxSATTimeset (int year, int month, int day, int hour, int minute, int second)
 
void get (int *year, int *month, int *day, int *hour, int *minute, int *second, DayOfWeekEnum *week=NULL) const
 
ofxSATTimeset (int year, int day, int hour, int minute, int second)
 
void get (int *year, int *day, int *hour, int *minute, int *second, DayOfWeekEnum *week=NULL) const
 
ofxSATTimeset (int year, int hour, int minute, int second)
 
void get (int *year, int *hour, int *minute, int *second) const
 
ofxSATTimeset (int year, int minute, int second)
 
void get (int *year, int *minute, int *second) const
 
ofxSATTimeset (int year, int second)
 
void get (int *year, int *second) const
 
ofxSATTimeset (time_t param)
 
ofxSATTimesetDate (ofxSATTime const &param)
 
ofxSATTimesetDate (int year, int month, int day)
 
void getDate (int *year, int *month, int *day, DayOfWeekEnum *week=NULL) const
 
ofxSATTimesetDate (int year, int day)
 
void getDate (int *year, int *day, DayOfWeekEnum *week=NULL) const
 
ofxSATTimesetTime (ofxSATTime const &param)
 
ofxSATTimesetTime (int hour, int minute, int second)
 
int getTime (int *hour, int *minute, int *second) const
 
ofxSATTimesetTime (int minute, int second)
 
int getTime (int *minute, int *second) const
 
ofxSATTimesetTime (int second)
 
int getTime (int *second) const
 
ofxSATTimesetYear (int param)
 
int getYear (void) const
 
ofxSATTimesetMonth (int param)
 
int getMonth (void) const
 
ofxSATTimesetDay (int param)
 
int getDay (void) const
 
ofxSATTimesetHour (int param)
 
int getHour (void) const
 
ofxSATTimesetMinute (int param)
 
int getMinute (void) const
 
ofxSATTimesetSecond (int param)
 
int getSecond (void) const
 
DayOfWeekEnum getDayOfWeek (void) const
 
ofxSATTimeadd (ofxSATTimeDiff const &param)
 
ofxSATTimeaddYear (int param)
 
ofxSATTimeaddMonth (int param)
 
ofxSATTimeaddDay (int param)
 
ofxSATTimeaddHour (int param)
 
ofxSATTimeaddMinute (int param)
 
ofxSATTimeaddSecond (int param)
 
ofxSATTimesub (ofxSATTimeDiff const &param)
 
ofxSATTimesubYear (int param)
 
ofxSATTimesubMonth (int param)
 
ofxSATTimesubDay (int param)
 
ofxSATTimesubHour (int param)
 
ofxSATTimesubMinute (int param)
 
ofxSATTimesubSecond (int param)
 
bool equals (ofxSATTime const &param) const
 
bool equalsDate (ofxSATTime const &param) const
 
bool equalsTime (ofxSATTime const &param) const
 
int compare (ofxSATTime const &param) const
 
int compareDate (ofxSATTime const &param) const
 
int compareTime (ofxSATTime const &param) const
 
ofxSATTimeDiff difference (ofxSATTime const &param) const
 
ofxSATError parse (std::string const &format, std::string const &string)
 
std::string format (std::string const &format) const
 
time_t asTime_t (void) const
 

Static Public メソッド

static ofxSATTime epochTime (void)
 
static ofxSATTime epochUTCTime (void)
 
static ofxSATTime currentTime (void)
 
static ofxSATTime currentUTCTime (void)
 

説明

時刻を表現するクラス

時刻を扱うには ofxSATTime クラスを利用します。 2つの時刻の差を扱うには ofxSATTimeDiff クラスを利用します。

ofxSATTime クラスの代表的な使い方

使い方1:「年/月/日 (曜日) 時:分:秒」の書式に従って文字列を書き出す

std::string str;
str = time.format("%YYYY/%MM/%DD (%WEK) %hh:%mm:%ss");
cout << str << endl;

使い方2:「年/月/日 (曜日) 時:分:秒」の書式に従って文字列から読み込む

std::string str;
str = "2012/11/07 (WED) 14:48:45";
error = time.parse("%YYYY/%MM/%DD (%WEK) %hh:%mm:%ss", str);
if (error == SATERROR_OK) {
cout << "time = " << time.format("%YYYY/%MM/%DD (%WEK) %hh:%mm:%ss") << endl;
}
else {
cout << "error = " << error.print() << endl;
}

使い方3:柔軟な文字列の読み込み

std::string str;
str = "today is 2012/11/7 14:48:45 WED";
error = time.parse("%***** is %YYYY/%M/%D %hh:%mm:%ss", str);
if (error == SATERROR_OK) {
cout << "time = " << time.format("%YYYY/%MM/%DD %hh:%mm:%ss") << endl;
}
else {
cout << "error = " << error.print() << endl;
}

使い方4:時刻を表す文字列の変換

std::string str;
str = "NOV 7/2012 (WED) - 14:48:45";
error = time.parse("%MTH %D/%Y (%***) - %h:%m:%s", str);
if (error == SATERROR_OK) {
str = time.format("%YYYY/%MM/%DD (%WEEK) %hh:%mm:%ss");
cout << "time = " << str << endl;
}
else {
cout << "error = " << error.print() << endl;
}

列挙型

曜日を表す定数です。

列挙型の値:
DAYOFWEEK_SUNDAY 

日曜日

DAYOFWEEK_MONDAY 

月曜日

DAYOFWEEK_TUESDAY 

火曜日

DAYOFWEEK_WEDNESDAY 

水曜日

DAYOFWEEK_THURSDAY 

木曜日

DAYOFWEEK_FRIDAY 

金曜日

DAYOFWEEK_SATURDAY 

土曜日

コンストラクタとデストラクタ

ofxSATTime::ofxSATTime ( void  )
explicit

コンストラクタです。 値は初期化されません。

ofxSATTime::ofxSATTime ( ofxSATTime const &  param)

コンストラクタです。 引数に指定した値が初期値となります。

引数
[in]param初期値
ofxSATTime::ofxSATTime ( int  year,
int  month,
int  day,
int  hour,
int  minute,
int  second 
)
explicit

コンストラクタです。 引数に指定した年・月・日・時・分・秒をもとにして初期値を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year年の初期値
[in]month月の初期値
[in]day日の初期値
[in]hour時の初期値
[in]minute分の初期値
[in]second秒の初期値
ofxSATTime::ofxSATTime ( int  year,
int  day,
int  hour,
int  minute,
int  second 
)
explicit

コンストラクタです。 引数に指定した年・日・時・分・秒をもとにして初期値を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year年の初期値
[in]day日の初期値
[in]hour時の初期値
[in]minute分の初期値
[in]second秒の初期値
ofxSATTime::ofxSATTime ( int  year,
int  hour,
int  minute,
int  second 
)
explicit

コンストラクタです。 引数に指定した年・時・分・秒をもとにして初期値を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year年の初期値
[in]hour時の初期値
[in]minute分の初期値
[in]second秒の初期値
ofxSATTime::ofxSATTime ( int  year,
int  minute,
int  second 
)
explicit

コンストラクタです。 引数に指定した年・分・秒をもとにして初期値を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year年の初期値
[in]minute分の初期値
[in]second秒の初期値
ofxSATTime::ofxSATTime ( int  year,
int  second 
)
explicit

コンストラクタです。 引数に指定した年・秒をもとにして初期値を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year年の初期値
[in]second秒の初期値
ofxSATTime::ofxSATTime ( time_t  param)
explicit

コンストラクタです。 引数に指定した POSIX 時刻をもとにして初期値を設定します。

引数
[in]paramPOSIX 時刻の初期値
ofxSATTime::~ofxSATTime ( void  )

デストラクタです。

関数

ofxSATTime & ofxSATTime::operator= ( ofxSATTime const &  param)

値を代入します。

引数
[in]param代入する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::operator+= ( ofxSATTimeDiff const &  param)

時刻差を加算します。

引数
[in]param加算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::operator-= ( ofxSATTimeDiff const &  param)

時刻差を減算します。

引数
[in]param減算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::set ( ofxSATTime const &  param)

値を設定します。

引数
[in]param設定する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::set ( int  year,
int  month,
int  day,
int  hour,
int  minute,
int  second 
)

引数に指定した年・月・日・時・分・秒をもとにして値を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year設定する年
[in]month設定する月
[in]day設定する日
[in]hour設定する時
[in]minute設定する分
[in]second設定する秒
戻り値
自分への参照
void ofxSATTime::get ( int *  year,
int *  month,
int *  day,
int *  hour,
int *  minute,
int *  second,
DayOfWeekEnum week = NULL 
) const

値を年・月・日・時・分・秒・曜日に分解して取得します。 各桁を取得する必要がない場合にはそれぞれの引数に NULL を指定することができます。

引数
[out]year現在の年
  • NULL : 年を返さない
  • その他
[out]month現在の月
  • NULL : 月を返さない
  • その他
[out]day現在の日
  • NULL : 日を返さない
  • その他
[out]hour現在の時
  • NULL : 時を返さない
  • その他
[out]minute現在の分
  • NULL : 分を返さない
  • その他
[out]second現在の秒
  • NULL : 秒を返さない
  • その他
[out]week現在の曜日
  • NULL : 曜日を返さない
  • その他
戻り値
なし
ofxSATTime & ofxSATTime::set ( int  year,
int  day,
int  hour,
int  minute,
int  second 
)

引数に指定した年・日・時・分・秒をもとにして値を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year設定する年
[in]day設定する日
[in]hour設定する時
[in]minute設定する分
[in]second設定する秒
戻り値
自分への参照
void ofxSATTime::get ( int *  year,
int *  day,
int *  hour,
int *  minute,
int *  second,
DayOfWeekEnum week = NULL 
) const

値を年・日・時・分・秒・曜日に分解して取得します。 各桁を取得する必要がない場合にはそれぞれの引数に NULL を指定することができます。

引数
[out]year現在の年
  • NULL : 年を返さない
  • その他
[out]day現在の日
  • NULL : 日を返さない
  • その他
[out]hour現在の時
  • NULL : 時を返さない
  • その他
[out]minute現在の分
  • NULL : 分を返さない
  • その他
[out]second現在の秒
  • NULL : 秒を返さない
  • その他
[out]week現在の曜日
  • NULL : 曜日を返さない
  • その他
戻り値
なし
ofxSATTime & ofxSATTime::set ( int  year,
int  hour,
int  minute,
int  second 
)

引数に指定した年・時・分・秒をもとにして値を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year設定する年
[in]hour設定する時
[in]minute設定する分
[in]second設定する秒
戻り値
自分への参照
void ofxSATTime::get ( int *  year,
int *  hour,
int *  minute,
int *  second 
) const

値を年・時・分・秒に分解して取得します。 各桁を取得する必要がない場合にはそれぞれの引数に NULL を指定することができます。

引数
[out]year現在の年
  • NULL : 年を返さない
  • その他
[out]hour現在の時
  • NULL : 時を返さない
  • その他
[out]minute現在の分
  • NULL : 分を返さない
  • その他
[out]second現在の秒
  • NULL : 秒を返さない
  • その他
戻り値
なし
ofxSATTime & ofxSATTime::set ( int  year,
int  minute,
int  second 
)

引数に指定した年・分・秒をもとにして値を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year設定する年
[in]minute設定する分
[in]second設定する秒
戻り値
自分への参照
void ofxSATTime::get ( int *  year,
int *  minute,
int *  second 
) const

値を年・分・秒に分解して取得します。 各桁を取得する必要がない場合にはそれぞれの引数に NULL を指定することができます。

引数
[out]year現在の年
  • NULL : 年を返さない
  • その他
[out]minute現在の分
  • NULL : 分を返さない
  • その他
[out]second現在の秒
  • NULL : 秒を返さない
  • その他
戻り値
なし
ofxSATTime & ofxSATTime::set ( int  year,
int  second 
)

引数に指定した年・秒をもとにして値を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year設定する年
[in]second設定する秒
戻り値
自分への参照
void ofxSATTime::get ( int *  year,
int *  second 
) const

値を年・秒に分解して取得します。 各桁を取得する必要がない場合にはそれぞれの引数に NULL を指定することができます。

引数
[out]year現在の年
  • NULL : 年を返さない
  • その他
[out]second現在の秒
  • NULL : 秒を返さない
  • その他
戻り値
なし
ofxSATTime & ofxSATTime::set ( time_t  param)

引数に指定した POSIX 時刻をもとにして値を設定します。

引数
[in]param設定する POSIX 時刻
戻り値
自分への参照
ofxSATTime & ofxSATTime::setDate ( ofxSATTime const &  param)

日付部分を設定します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param設定する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::setDate ( int  year,
int  month,
int  day 
)

引数に指定した年・月・日をもとにして日付部分を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year設定する年
[in]month設定する月
[in]day設定する日
戻り値
自分への参照
void ofxSATTime::getDate ( int *  year,
int *  month,
int *  day,
DayOfWeekEnum week = NULL 
) const

日付部分を年・月・日・曜日に分解して取得します。 各桁を取得する必要がない場合にはそれぞれの引数に NULL を指定することができます。

引数
[out]year現在の年
  • NULL : 年を返さない
  • その他
[out]month現在の月
  • NULL : 月を返さない
  • その他
[out]day現在の日
  • NULL : 日を返さない
  • その他
[out]week現在の曜日
  • NULL : 曜日を返さない
  • その他
戻り値
なし
ofxSATTime & ofxSATTime::setDate ( int  year,
int  day 
)

引数に指定した年・日をもとにして日付部分を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]year設定する年
[in]day設定する日
戻り値
自分への参照
void ofxSATTime::getDate ( int *  year,
int *  day,
DayOfWeekEnum week = NULL 
) const

日付部分を年・日・曜日に分解して取得します。 各桁を取得する必要がない場合にはそれぞれの引数に NULL を指定することができます。

引数
[out]year現在の年
  • NULL : 年を返さない
  • その他
[out]day現在の日
  • NULL : 日を返さない
  • その他
[out]week現在の曜日
  • NULL : 曜日を返さない
  • その他
戻り値
なし
ofxSATTime & ofxSATTime::setTime ( ofxSATTime const &  param)

時刻部分を設定します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param設定する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::setTime ( int  hour,
int  minute,
int  second 
)

引数に指定した時・分・秒をもとにして時刻部分を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]hour設定する時
[in]minute設定する分
[in]second設定する秒
戻り値
自分への参照
int ofxSATTime::getTime ( int *  hour,
int *  minute,
int *  second 
) const

時刻部分を時・分・秒に分解して取得します。 各桁を取得する必要がない場合にはそれぞれの引数に NULL を指定することができます。

引数
[out]hour現在の時
  • NULL : 時を返さない
  • その他
[out]minute現在の分
  • NULL : 分を返さない
  • その他
[out]second現在の秒
  • NULL : 秒を返さない
  • その他
戻り値
午前0時からの経過秒
ofxSATTime & ofxSATTime::setTime ( int  minute,
int  second 
)

引数に指定した分・秒をもとにして時刻部分を設定します。 各桁で繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]minute設定する分
[in]second設定する秒
戻り値
自分への参照
int ofxSATTime::getTime ( int *  minute,
int *  second 
) const

時刻部分を分・秒に分解して取得します。 各桁を取得する必要がない場合にはそれぞれの引数に NULL を指定することができます。

引数
[out]minute現在の分
  • NULL : 分を返さない
  • その他
[out]second現在の秒
  • NULL : 秒を返さない
  • その他
戻り値
午前0時からの経過秒
ofxSATTime & ofxSATTime::setTime ( int  second)

引数に指定した秒をもとにして時刻部分を設定します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]second設定する秒
戻り値
自分への参照
int ofxSATTime::getTime ( int *  second) const

時刻部分を秒に分解して取得します。 取得する必要がない場合には引数に NULL を指定することができます。

引数
[out]second現在の秒
  • NULL : 秒を返さない
  • その他
戻り値
午前0時からの経過秒
ofxSATTime & ofxSATTime::setYear ( int  param)

年を設定します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param設定する値
戻り値
自分への参照
int ofxSATTime::getYear ( void  ) const

年を取得します。

戻り値
現在の値
ofxSATTime & ofxSATTime::setMonth ( int  param)

月を設定します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param設定する値
戻り値
自分への参照
int ofxSATTime::getMonth ( void  ) const

月を取得します。

戻り値
現在の値
ofxSATTime & ofxSATTime::setDay ( int  param)

日を設定します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param設定する値
戻り値
自分への参照
int ofxSATTime::getDay ( void  ) const

日を取得します。

戻り値
現在の値
ofxSATTime & ofxSATTime::setHour ( int  param)

時を設定します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param設定する値
戻り値
自分への参照
int ofxSATTime::getHour ( void  ) const

時を取得します。

戻り値
現在の値
ofxSATTime & ofxSATTime::setMinute ( int  param)

分を設定します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param設定する値
戻り値
自分への参照
int ofxSATTime::getMinute ( void  ) const

分を取得します。

戻り値
現在の値
ofxSATTime & ofxSATTime::setSecond ( int  param)

秒を設定します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param設定する値
戻り値
自分への参照
int ofxSATTime::getSecond ( void  ) const

秒を取得します。

戻り値
現在の値
ofxSATTime::DayOfWeekEnum ofxSATTime::getDayOfWeek ( void  ) const

曜日を取得します。

戻り値
現在の値
ofxSATTime & ofxSATTime::add ( ofxSATTimeDiff const &  param)

時刻差を加算します。

引数
[in]param加算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::addYear ( int  param)

年を加算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param加算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::addMonth ( int  param)

月を加算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param加算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::addDay ( int  param)

日を加算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param加算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::addHour ( int  param)

時を加算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param加算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::addMinute ( int  param)

分を加算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param加算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::addSecond ( int  param)

秒を加算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param加算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::sub ( ofxSATTimeDiff const &  param)

時刻差を減算します。

引数
[in]param減算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::subYear ( int  param)

年を減算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param減算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::subMonth ( int  param)

月を減算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param減算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::subDay ( int  param)

日を減算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param減算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::subHour ( int  param)

時を減算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param減算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::subMinute ( int  param)

分を減算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param減算する値
戻り値
自分への参照
ofxSATTime & ofxSATTime::subSecond ( int  param)

秒を減算します。 繰り上げや繰り下げが発生したときにも正しく設定されます。

引数
[in]param減算する値
戻り値
自分への参照
bool ofxSATTime::equals ( ofxSATTime const &  param) const

値を比較します。

引数
[in]param比較する値
戻り値
比較結果
戻り値
true同じ
false同じでない
bool ofxSATTime::equalsDate ( ofxSATTime const &  param) const

日付部分を比較します。

引数
[in]param比較する値
戻り値
比較結果
戻り値
true同じ
false同じでない
bool ofxSATTime::equalsTime ( ofxSATTime const &  param) const

時刻部分を比較します。

引数
[in]param比較する値
戻り値
比較結果
戻り値
true同じ
false同じでない
int ofxSATTime::compare ( ofxSATTime const &  param) const

値の大小を比較します。

引数
[in]param比較する値
戻り値
比較結果
戻り値
0同じ (this == param)
+1大きい (this > param)
-1小さい (this < param)
int ofxSATTime::compareDate ( ofxSATTime const &  param) const

日付部分の大小を比較します。

引数
[in]param比較する値
戻り値
比較結果
戻り値
0同じ (this == param)
+1大きい (this > param)
-1小さい (this < param)
int ofxSATTime::compareTime ( ofxSATTime const &  param) const

時刻部分の大小を比較します。

引数
[in]param比較する値
戻り値
比較結果
戻り値
0同じ (this == param)
+1大きい (this > param)
-1小さい (this < param)
ofxSATTimeDiff ofxSATTime::difference ( ofxSATTime const &  param) const

引数に指定された時刻との時刻差を取得します。

引数
[in]param減算する値
戻り値
時刻差
ofxSATError ofxSATTime::parse ( std::string const &  format,
std::string const &  string 
)

引数に指定された書式に従って文字列から値を設定します。

使い方1:「年/月/日 (曜日) 時:分:秒」の書式に従って文字列から読み込む

std::string str;
str = "2012/11/07 (WED) 14:48:45";
error = time.parse("%YYYY/%MM/%DD (%WEK) %hh:%mm:%ss", str);
if (error == SATERROR_OK) {
cout << "time = " << time.format("%YYYY/%MM/%DD (%WEK) %hh:%mm:%ss") << endl;
}
else {
cout << "error = " << error.print() << endl;
}

使い方2:柔軟な文字列の読み込み

std::string str;
str = "today is 2012/11/7 14:48:45 WED";
error = time.parse("%***** is %YYYY/%M/%D %hh:%mm:%ss", str);
if (error == SATERROR_OK) {
cout << "time = " << time.format("%YYYY/%MM/%DD %hh:%mm:%ss") << endl;
}
else {
cout << "error = " << error.print() << endl;
}

使い方3:時刻を表す文字列の変換

std::string str;
str = "NOV 7/2012 (WED) - 14:48:45";
error = time.parse("%MTH %D/%Y (%***) - %h:%m:%s", str);
if (error == SATERROR_OK) {
str = time.format("%YYYY/%MM/%DD (%WEEK) %hh:%mm:%ss");
cout << "time = " << str << endl;
}
else {
cout << "error = " << error.print() << endl;
}
引数
[in]format書式を表す文字列
  • %YYYY : 4桁の年 (0000 ~ 9999)
  • %YY : 2桁の年 (00 ~ 99)
  • %Y : 年 (0 ~ 9999)
  • %MONTH : 大文字の英語の月 (JANUARY ~ DECEMBER)
  • %Month : 英語の月 (January ~ December)
  • %month : 小文字の英語の月 (january ~ december)
  • %MTH : 大文字の英語の月の略称 (JAN ~ DEC)
  • %Mth : 英語の月の略称 (Jan ~ Dec)
  • %mth : 小文字の英語の月の略称 (jan ~ dec)
  • %MM : 2桁の月 (01 ~ 12)
  • %M : 月 (1 ~ 12)
  • %DD : 2桁の日 (01 ~ 31)
  • %D : 日 (1 ~ 31)
  • %WEEK : 大文字の英語の曜日 (SUNDAY ~ SATURDAY)
  • %Week : 英語の曜日 (Sunday ~ Saturday)
  • %week : 小文字の英語の曜日 (sunday ~ saturday)
  • %WEK : 大文字の英語の曜日の略称 (SUN ~ SAT)
  • %Wek : 英語の曜日の略称 (Sun ~ Sat)
  • %wek : 小文字の英語の曜日の略称 (sun ~ sat)
  • %y : 日本語の曜日 (日 ~ 土)
  • %AN : 大文字の英語の午前午後 (AM, PM)
  • %an : 小文字の英語の午前午後 (am, pm)
  • %AD : 大文字の英語の午前午後 (A.M., P.M.)
  • %ad : 小文字の英語の午前午後 (a.m., p.m.)
  • %g : 日本語の午前午後 (午前, 午後)
  • %HH : 2桁の12時間表記の時 (01 ~ 12)
  • %H : 12時間表記の時 (1 ~ 12)
  • %hh : 2桁の時 (00 ~ 23)
  • %h : 時 (0 ~ 23)
  • %mm : 2桁の分 (00 ~ 59)
  • %m : 分 (0 ~ 59)
  • %ss : 2桁の秒 (00 ~ 59)
  • %s : 秒 (0 ~ 59)
  • %<space> : 何もしない
  • %% : % を読み込み
  • %*(*...) : * の数だけ任意の文字を読み込み
  • %<その他> : 何もしない
  • % 以外の文字 : 一致する文字を読み込み
[in]string解析する文字列
戻り値
エラー情報
戻り値
SATERROR_OK正常終了
SATERROR_INVALID_FORMATパラメータが不正
std::string ofxSATTime::format ( std::string const &  format) const

引数に指定された書式に従って値を文字列に変換します。

使い方1:「年/月/日 (曜日) 時:分:秒」の書式に従って文字列を書き出す

std::string str;
str = time.format("%YYYY/%MM/%DD (%WEK) %hh:%mm:%ss");
cout << str << endl;

使い方2:時刻を表す文字列の変換

std::string str;
str = "NOV 7/2012 (WED) - 14:48:45";
error = time.parse("%MTH %D/%Y (%***) - %h:%m:%s", str);
if (error == SATERROR_OK) {
str = time.format("%YYYY/%MM/%DD (%WEEK) %hh:%mm:%ss");
cout << "time = " << str << endl;
}
else {
cout << "error = " << error.print() << endl;
}
引数
[in]format書式を表す文字列
  • %YYYY : 4桁の年 (0000 ~ 9999)
  • %YY : 2桁の年 (00 ~ 99)
  • %Y : 年 (0 ~ 9999)
  • %MONTH : 大文字の英語の月 (JANUARY ~ DECEMBER)
  • %Month : 英語の月 (January ~ December)
  • %month : 小文字の英語の月 (january ~ december)
  • %MTH : 大文字の英語の月の略称 (JAN ~ DEC)
  • %Mth : 英語の月の略称 (Jan ~ Dec)
  • %mth : 小文字の英語の月の略称 (jan ~ dec)
  • %MM : 2桁の月 (01 ~ 12)
  • %M : 月 (1 ~ 12)
  • %DD : 2桁の日 (01 ~ 31)
  • %D : 日 (1 ~ 31)
  • %WEEK : 大文字の英語の曜日 (SUNDAY ~ SATURDAY)
  • %Week : 英語の曜日 (Sunday ~ Saturday)
  • %week : 小文字の英語の曜日 (sunday ~ saturday)
  • %WEK : 大文字の英語の曜日の略称 (SUN ~ SAT)
  • %Wek : 英語の曜日の略称 (Sun ~ Sat)
  • %wek : 小文字の英語の曜日の略称 (sun ~ sat)
  • %y : 日本語の曜日 (日 ~ 土)
  • %AN : 大文字の英語の午前午後 (AM, PM)
  • %an : 小文字の英語の午前午後 (am, pm)
  • %AD : 大文字の英語の午前午後 (A.M., P.M.)
  • %ad : 小文字の英語の午前午後 (a.m., p.m.)
  • %g : 日本語の午前午後 (午前, 午後)
  • %HH : 2桁の12時間表記の時 (01 ~ 12)
  • %H : 12時間表記の時 (1 ~ 12)
  • %hh : 2桁の時 (00 ~ 23)
  • %h : 時 (0 ~ 23)
  • %mm : 2桁の分 (00 ~ 59)
  • %m : 分 (0 ~ 59)
  • %ss : 2桁の秒 (00 ~ 59)
  • %s : 秒 (0 ~ 59)
  • %<space> : 何もしない
  • %% : % を書き出し
  • %* : * を書き出し
  • %<その他> : 何もしない
  • % 以外の文字 : そのまま書き出し
戻り値
結果の文字列
time_t ofxSATTime::asTime_t ( void  ) const

POSIX 時刻として値を取得します。

戻り値
POSIX 時刻
ofxSATTime ofxSATTime::epochTime ( void  )
static

基準時刻を取得します。

戻り値
基準時刻
ofxSATTime ofxSATTime::epochUTCTime ( void  )
static

基準時刻を UTC 時間で取得します。

戻り値
基準時刻
ofxSATTime ofxSATTime::currentTime ( void  )
static

現在時刻を取得します。

戻り値
現在時刻
ofxSATTime ofxSATTime::currentUTCTime ( void  )
static

現在時刻を UTC 時間で取得します。

戻り値
現在時刻