boost 时间与日期处理

  导视:
特点
缺点
说明
timer
计时基类
不适合大跨度时间
适用大部分的普通计时
progress_timer
继承自timer 可以自动写入流中
只精确到0.01s
如果需要更精确,可派生个类,调用stream的precision设置
progress_display 图形化显示进度 只能输出到cout 如果还有其他输出则会干扰进度显示。
折中的办法是重新显示 pd.restart(size); pd+= pNum;
date 日期结构,时间点 —— date是date_time库的核心类 boost::gregorian
date_duration days、months、years 时间段 —— 表示一段时间,可以把它看成一个int
date_period 标量,左开右闭,时间区间 —— 可以认为是一个有起点的date_duration。能做交集、并集
date_iterator 迭代器,以某个单位增减 —— 天、周、月、年四种迭代器,以某种增量移动。
time_duration 时间段 同date_duration —— hours、minutes、seconds、millisec、boost::posix_time
ptime 时间点 date+time_duration —— 分date()和time_of_day()操作。
time_period 时间区间 同date_period —— ——
time_iterator 迭代器,以某个单位增减 —— 可直接与ptime比较
date_facet 流格式化日期 —— %Y年%m月%d日
time_facet 流格式化时间 —— %Y年%m月%d日 %H点%M分%S%F秒

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

#include 
#include 

using namespace std;

int main()
{
	boost::timer t;
	std::cout<<"Max "< v(100);
	//Do Data Fill...... 
	ofstream fs("c:\test.txt");

	boost::progress_display pd(v.size());
	vector::iterator pos;
	for (pos = v.begin();pos != v.end();++pos)
	{
		fs<<*pos<dd2 &&dd1year() == 2016);
	
		cout<<"-------------- func --------------"<


运行结果:
Max 2.14748e+006
Min 0.001
elapsed: 0.001
elapsed: 0.1
---------------------------
0.30 s
---------------------------
0% 10 20 30 40 50 60 70 80 90 100%
|----|----|----|----|----|----|----|----|----|----|
***************************************************
---------------------------
----------------- date ------------------
2013-Apr-17
2013-Apr-17
-infinity
+infinity
---------------------------
107
16
---------------------------
2013-Apr-17
20130417
2013-04-17
2013-Apr-17
---------------------------
-------------- days(date_duration) --------------
-------------- Calc --------------
3142
-------------- date_period --------------
[2013-Apr-17/2013-Apr-30]
-------------- date_iterator --------------
-------------- func --------------
Yes
-------------- time_duration --------------
01:08:58.999000
01:10:10.300000
011010.300000
-------------- ptime --------------
2013-Apr-17 01:00:00
2013-Apr-17 16:25:00
2013-Apr-17 17:19:21
2013-Apr-17 09:19:21.870604
2013-04-17T01:30:00
-------------- time_period --------------
-------------- time_iterator --------------
2013-Apr-17 01:30:00
2013-Apr-17 01:40:00
2013-Apr-17 01:50:00
2013-Apr-17 02:00:00
2013-Apr-17 02:10:00
2013-Apr-17 02:20:00
-------------- formate --------------
2013 年04 月17 日
2013 年04 月17 日 01点30分00秒

本篇博客出自 阿修罗道 ,转载请注明出处: http://blog.csdn.net/fansongy/article/details/8814996


你可能感兴趣的:(boost,C/C++)