其他分享
首页 > 其他分享> > 有关时间的函数积累

有关时间的函数积累

作者:互联网

描述

相信大家在开发过程中经常需要获取当前的时间的问题, 下面总结了一些相关函,方便遇到的时候使用

//获取当前时间,格式为time_t
time_t current_time;
time(&current_time);

//获取两个时间相隔多少分钟
long remainSec = difftime(time_t _Time1, time_t _Time2)
long minute = remainSec / 60;
//获取今日日期
inline std::string GetTodayDate()
{
	time_t timep;
	time(&timep);
	char tmp[64];
	strftime(tmp, sizeof(tmp), "%Y-%m-%d", localtime(&timep));
	return tmp;
}
//获取今日时间
inline std::string GetCurrentDateTime()
{
	time_t timep;
	time(&timep);
	char tmp[64];
	strftime(tmp, sizeof(tmp), "%Y-%m-%d %H:%M:%S", localtime(&timep));
	return tmp;
}
//获取今日时间
inline std::string GetDateTime()
{
	time_t timep;
	time(&timep);
	char tmp[64];
	strftime(tmp, sizeof(tmp), "%Y-%m-%d %H%M%S", localtime(&timep));
	return tmp;
}
//比较时间
inline bool CompareTime(const char* time1, const char* time2)
{
	int year1, month1, day1, hour1, min1, sec1;
	int year2, month2, day2, hour2, min2, sec2;
	sscanf(time1, "%d-%d-%d %d:%d:%d", &year1, &month1, &day1, &hour1, &min1, &sec1);
	sscanf(time2, "%d-%d-%d %d:%d:%d", &year2, &month2, &day2, &hour2, &min2, &sec2);
	int tm1 = year1 * 10000 + month1 * 100 + day1;
	int tm2 = year2 * 10000 + month2 * 100 + day2;
	if (tm1 != tm2){
		return false;
	}
	else{
		//比较到分钟
		tm1 = hour1 * 3600 + min1 * 60 ;
		tm2 = hour2 * 3600 + min2 * 60 ;//将时分秒转换为秒数
		if (tm1 == tm2){
			return true;
		}
		else{
			return false;
		}
	}
}
ws_ear 发布了1 篇原创文章 · 获赞 0 · 访问量 16 私信 关注

标签:积累,tmp,return,函数,tm1,有关,timep,char,time
来源: https://blog.csdn.net/ws_ear/article/details/103944899