STTNet 0.7.0
Loading...
Searching...
No Matches
stt::time::DateTime Class Reference

时间操作、运算、计时的类 More...

#include <sttnet.h>

Inheritance diagram for stt::time::DateTime:
stt::file::LogFile

Public Member Functions

bool startTiming ()
 开始计时
 
Duration checkTime ()
 计时过程中检查时间
 
Duration endTiming ()
 停止计时
 
Duration getDt ()
 获取上一次计时的时间
 
bool isStart ()
 返回本对象计时状态
 

Static Public Member Functions

static std::string & getTime (std::string &timeStr, const std::string &format=ISO8086A)
 获取当前时间
 
static bool convertFormat (std::string &timeStr, const std::string &oldFormat, const std::string &newFormat=ISO8086A)
 转化时间字符串的格式
 
static DurationcalculateTime (const std::string &time1, const std::string &time2, Duration &result, const std::string &format1=ISO8086A, const std::string &format2=ISO8086A)
 计算两个用字符串表示的时间相减的差值
 
static std::string & calculateTime (const std::string &time1, const Duration &time2, std::string &result, const std::string &am, const std::string &format1=ISO8086A, const std::string &format2=ISO8086A)
 一个用字符串表示的时间加上或者减去一段时间
 
static bool compareTime (const std::string &time1, const std::string &time2, const std::string &format1=ISO8086A, const std::string &format2=ISO8086A)
 比较两个时间字符串表示的时间的大小
 

Detailed Description

A local wall-clock text utility and a monotonic timer backed by steady_clock.

Usage boundaries:
  • getTime() produces local text, not a Unix timestamp. ISO8086A/B are historical macro names and carry no timezone.
  • convertFormat() rearranges text according to declared tokens; it is not a general date parser.
  • checkTime(), endTiming(), and getDt() all return stt::time::Duration.
  • Timing before startTiming(), invalid dates, and reverse subtraction produce an invalid Duration.

Member Function Documentation

◆ calculateTime() [1/2]

static std::string & stt::time::DateTime::calculateTime ( const std::string & time1,
const Duration & time2,
std::string & result,
const std::string & am,
const std::string & format1 = ISO8086A,
const std::string & format2 = ISO8086A )
static

一个用字符串表示的时间加上或者减去一段时间

Parameters
time1待运算的时间字符串
time2参与运算的用Duration表示的一段时间
result接收用字符串表示的运算结果的string容器
am填入+:加法运算 填入-:减法运算
format1time1的格式 yyyy年 mm月 dd日 hh时 mi分 ss秒 sss毫秒 (默认格式为'yyyy-mm-ddThh:mi:ss',即 STTNet 历史本地时间文本格式(不携带时区))
format2result的格式 yyyy年 mm月 dd日 hh时 mi分 ss秒 sss毫秒 (默认格式为'yyyy-mm-ddThh:mi:ss',即 STTNet 历史本地时间文本格式(不携带时区))
Returns
result的引用

◆ calculateTime() [2/2]

static Duration & stt::time::DateTime::calculateTime ( const std::string & time1,
const std::string & time2,
Duration & result,
const std::string & format1 = ISO8086A,
const std::string & format2 = ISO8086A )
static

计算两个用字符串表示的时间相减的差值

Parameters
time1被减的时间
time2减去的时间
result一个接收结果的Duration容器
format1time1的时间字符串格式 yyyy年 mm月 dd日 hh时 mi分 ss秒 sss毫秒 (默认格式为'yyyy-mm-ddThh:mi:ss',即 STTNet 历史本地时间文本格式(不携带时区))
format2time2的时间字符串格式 yyyy年 mm月 dd日 hh时 mi分 ss秒 sss毫秒 (默认格式为'yyyy-mm-ddThh:mi:ss',即 STTNet 历史本地时间文本格式(不携带时区))
Returns
result的引用

◆ checkTime()

Duration stt::time::DateTime::checkTime ( )

计时过程中检查时间

Returns
返回一个Duration记录时间到目前流逝长度

◆ compareTime()

static bool stt::time::DateTime::compareTime ( const std::string & time1,
const std::string & time2,
const std::string & format1 = ISO8086A,
const std::string & format2 = ISO8086A )
static

比较两个时间字符串表示的时间的大小

Note
时间越往后越大
Parameters
time1参与比较的第一个字符串
time2参与比较的第二个字符串
format1time1的字符串格式 yyyy年 mm月 dd日 hh时 mi分 ss秒 sss毫秒 (默认格式为'yyyy-mm-ddThh:mi:ss',即 STTNet 历史本地时间文本格式(不携带时区))
format2time2的字符串格式 yyyy年 mm月 dd日 hh时 mi分 ss秒 sss毫秒 (默认格式为'yyyy-mm-ddThh:mi:ss',即 STTNet 历史本地时间文本格式(不携带时区))
Returns
true:time1>=time2 false: time1<time2

◆ convertFormat()

static bool stt::time::DateTime::convertFormat ( std::string & timeStr,
const std::string & oldFormat,
const std::string & newFormat = ISO8086A )
static

转化时间字符串的格式

Note
传入时间字符串的引用修改原字符串
Parameters
timeStr原时间字符串
oldFormat原时间字符串格式 (yyyy年 mm月 dd日 hh时 mi分 ss秒 sss毫秒)
newFormat新的时间格式 (默认格式为'yyyy-mm-ddThh:mi:ss',即 STTNet 历史本地时间文本格式(不携带时区))
Returns
true转化成功false 转化失败

◆ endTiming()

Duration stt::time::DateTime::endTiming ( )

停止计时

Returns
返回一个Duration记录时间
Note
对象会保存记录上一次计时的时间

◆ getDt()

Duration stt::time::DateTime::getDt ( )
inline

获取上一次计时的时间

Returns
返回一个Duration记录时间

◆ getTime()

static std::string & stt::time::DateTime::getTime ( std::string & timeStr,
const std::string & format = ISO8086A )
static

获取当前时间

Note
获取当前时间,返回字符串
Parameters
timeStr接收时间的字符串容器
format指定时间字符串的格式 yyyy年 mm月 dd日 hh时 mi分 ss秒 sss毫秒 (默认格式为'yyyy-mm-ddThh:mi:ss',即 STTNet 历史本地时间文本格式(不携带时区))
Returns
返回timeStr的引用

◆ isStart()

bool stt::time::DateTime::isStart ( )
inline

返回本对象计时状态

Returns
true:对象正在计时 false:对象没有开始计时

◆ startTiming()

bool stt::time::DateTime::startTiming ( )

开始计时

Returns
ture:开始成功 false:开始失败

The documentation for this class was generated from the following file: