zoukankan      html  css  js  c++  java
  • POCO库——Foundation组件之日期时间DateTime

    日期时间DateTime:内部提供多个设计计时器、日期、时区、时间戳等;

    Clock.h :Clock时钟计时类,_clock:Int64类型时钟值,CLOCKVAL_MIN、CLOCKVAL_MAX:最小、最大时钟值;提供多个重载版本的构造函数、复制、拷贝构造函数实现,以及多个不同的条件运算符重载实现;update:更新当前系统时钟,Windows下采用高精度计时器相关函数QueryPerformanceCounter、QueryPerformanceFrequency实现获取;swap:交换两个时钟计时类对象中的时钟值;microseconds/raw:获取当前时钟值(微秒为单位);elapsed:当前时间流逝计时;isElapsed:判断当前时钟下是否已超时;resolution:时钟分辨率,当前时钟默认为1000000;accuracy:获取当前时钟精度,Windos下由时钟分辨率/时钟频率计算所得;monotonic:时钟计时是为单调的;


    Stopwatch.h :Stopwatch一个对时间计时器封装,基于Clock时钟_start,流逝时间计时_elapsed,是否正在计时_running,start:更新时钟_start并开始计时,stop:累积当前流逝时间并停止计时,reset:重置计时,清空累积流逝时间,restart:清空累积流逝时间并更新时钟_start、开始计时,elapsed:计算当前从开始计算或重新开始计时到当前的计时流逝时间累积,单位微秒,elapsedSeconds:获取elapsed()下秒为单位的流逝时间累积,resolution:当前时钟分辨率;


    Timespan.h :Timespan时间段、时间间隔类,_span:时间段值(微秒为单位),MILLISECONDS、SECONDS、MINUTES、HOURS、DAYS分别为毫秒、秒、分、时静态变量表示时间段,提供了多个不同的构造函数、复制构造、赋值,此外还有assign指派函数以实现对_span时间段值的初始化,另外还提供多个条件运算符重载以支持可计算、比较等操作,days、hours、minutes、seconds、milliseconds、microseconds分别返回当前时间段下的天数、时、分、秒、毫秒、微秒;此外totalHours、totalMinutes、totalSeconds、totalMilliseconds、totalMicroseconds分别返回当前时间段下总小时数、总分钟数、总秒数、总毫秒数、总微秒数;


    Timestamp.h :Timestamp时间戳类,基于UTC的unix时间戳,_ts:从1971 01-01 00:00:00 开始至今的微秒数;提供多个不同的构造函数、复制构造、赋值,多个条件运算符重载以支持可计算、比较等操作,swap:交换两个时间戳,update:获取最新的时间戳值,不同平台下提供不同实现,其中Windows下通过GetSystemTimeAsFileTime获取UTF格式的FILETIME结构并计算时间戳;resolution:每秒下微秒单位,分辨率,默认值为1000000;epochTime:时间戳计时秒数,时间基于midnight, January 1, 1970;utcTime:返回基于UTC时间戳,时间基于midnight, October 15, 1582;epochMicroseconds/raw:返回当前时间戳;时间基于midnight, January 1, 1970;elapsed:当前计时时间戳流逝时间;isElapsed:当前传入时间是否已超时;fromEpochTime:转化epochTime返回值类型为时间戳对象;fromUtcTime:转化UTCtime返回值类型为时间戳对象,fromFileTimeNP/toFileTimeNP:FileTime与时间戳对象转化;


    Timezone.h :Timezone时区类,不同平台下提供不同的实现,Windows下通过GetTimeZoneInformation获取时区信息,name:获取时区名称、描述,若开启夏令时间,则返回夏令时间描述,否则返回标准时间描述;standardName:获取标准时间描述;dstName:获取夏令时间描述;utcOffset:获取UTC与localTime间的时差,Windows下通过GetTimeZoneInformation获取Bias值,该值即为偏移差值(UTC-localTime-dst()=Bias);dst:获取DaylightBias值,若关闭了夏令时间,则为0;isDst:当前时间戳是否为开启了夏令时间;tzd:获取utcOffset() + dst(),也即获取UTC与localTime间的时差值,以上各个值均以秒为单位;


    DateTime.h :DateTime基于格林日期的类,_utcTime:UTC时间;_year、_month、_day、_hour、_minute、_second、_millisecond、_microsecond表示格林日期各个值项,构造函数提供了多个版本,可通过格林日期参数或儒略日期参数、Timestamp时间戳、UTC时间和时间偏移,此外提供获取格林日期参数、转化等函数接口实现;


    DateTimeFormat.h :DateTimeFormat静态类,提供可格式化为多种时间日期格式的字符串常量;


    DateTimeFormatter.h :DateTimeFormatter类提供时间日期格式化相关接口实现,主要提供format*和append*格式化函数,以支持标准的或自定义的格式化时间日期字符串;


    DateTimeParser.h :DateTimeParser静态类,提供从时间日期格式化后的字符串或非标准格式的字符串中解析时间日期;

  • 相关阅读:
    Session的使用与Session的生命周期
    Long-Polling, Websockets, SSE(Server-Sent Event), WebRTC 之间的区别与使用
    十九、详述 IntelliJ IDEA 之 添加 jar 包
    十八、IntelliJ IDEA 常用快捷键 之 Windows 版
    十七、IntelliJ IDEA 中的 Maven 项目初体验及搭建 Spring MVC 框架
    十六、详述 IntelliJ IDEA 创建 Maven 项目及设置 java 源目录的方法
    十五、详述 IntelliJ IDEA 插件的安装及使用方法
    十四、详述 IntelliJ IDEA 提交代码前的 Code Analysis 机制
    十三、IntelliJ IDEA 中的版本控制介绍(下)
    十二、IntelliJ IDEA 中的版本控制介绍(中)
  • 原文地址:https://www.cnblogs.com/haomiao/p/5671955.html
Copyright © 2011-2022 走看看