常用函数-Time
#pragma pack(push,1)
/*
在这中间定义的结构体,已单字节对齐
*/
#pragma pack(pop)
/************************************************************************
函数功能: 将时间time_t转化为YYYY-MM-DD hh:mm:ss
输入参数: time_t tTime -- 给定时间的标准time_t格式
输出参数: string& strTime -- 字符串
返回值 :
说明 :
************************************************************************/
void time2string(time_t tTime, string& strTime)
{
struct tm tmTime;
localtime_s(&tmTime, &tTime); char cTime[] = {'\n'};
_snprintf_s(cTime, sizeof(cTime)-,
"%04d-%02d-%02d %02d:%02d:%02d",
tmTime.tm_year + ,
tmTime.tm_mon + ,
tmTime.tm_mday,
tmTime.tm_hour,
tmTime.tm_min, tmTime.tm_sec);
strTime = cTime;
}
/*
用于tcp传输时间结构体
*/
typedef struct tagTimePack
{
unsigned short nYear;
unsigned char nMonth;
unsigned char nDay;
unsigned char nSer;
unsigned char nHour;
unsigned char nMinute;
unsigned char nSecond; std::string toString()
{
char buff[] = {'\0'};
_snprintf_s(buff, sizeof(buff)-,
"%04d-%02d-%02d %02d:%02d:%02d",
nYear, nMonth, nDay, nHour, nMinute, nSecond);
std::string str(buff);
return str;
}
} TimePack, * LPTimePack;
/************************************************************************
函数功能: 将时间的time_t的表示,转换为自定义的TimePack格式
输入参数: time_t tTime -- 给定时间的标准time_t格式
输出参数: const TimePack& timePack -- 给定时间的自定义TimePack格式
返回值 :
说明 :
************************************************************************/
void DPC::time2pack(time_t tTime, TimePack& timePack)
{
struct tm tmTime;
localtime_s(&tmTime, &tTime);
timePack.nYear = tmTime.tm_year + ;
timePack.nMonth = tmTime.tm_mon + ;
timePack.nDay = tmTime.tm_mday;
timePack.nHour = tmTime.tm_hour;
timePack.nMinute = tmTime.tm_min;
timePack.nSecond = tmTime.tm_sec;
};
/************************************************************************
函数功能: 将时间的自定义的TimePack表示,转换为标准的time_t格式
输入参数: const TimePack& timePack -- 给定时间的自定义TimePack格式 输出参数: time_t& tTime -- 时间的标准time_t格式
返回值 :
说明 :
************************************************************************/
void DPC::pack2time(const TimePack& timePack, time_t& tTime)
{
tm mytm;
mytm.tm_year = timePack.nYear - ;
mytm.tm_mon = timePack.nMonth - ;
mytm.tm_mday = timePack.nDay;
mytm.tm_hour = timePack.nHour;
mytm.tm_min = timePack.nMinute;
mytm.tm_sec = timePack.nSecond; // 如果在循环再频繁被调用,可考虑使用 dcs_mktime
tTime = mktime(&mytm);
};
//*************************************************************************
// 函数名称: OleTimeToTimet
// 返 回 值: time_t
// 参 数: const COleDateTime & oleTime
// 函数说明: COleDatetime转time_t
//*************************************************************************
time_t OleTimeToTimet(const COleDateTime& oleTime)
{
if (COleDateTime::valid != oleTime.GetStatus()){
return ;
} SYSTEMTIME systime;
oleTime.GetAsSystemTime(systime);
struct tm atm; atm.tm_sec = systime.wSecond;
atm.tm_min = systime.wMinute;
atm.tm_hour = systime.wHour;
atm.tm_mday = systime.wDay;
atm.tm_mon = systime.wMonth - ;
atm.tm_year = systime.wYear - ;
atm.tm_isdst = -; return mktime(&atm);
}
/************************************************************************
函数功能: 将时间的time_t的表示,转换为string格式
输入参数: time_t tTime -- 给定时间的标准time_t格式
输出参数: string& strTime --
返回值 :
说明 : 格式:YYYYMMDDHHMMSSmmm
************************************************************************/
void DPC::get_local_time(string& strTime)
{
SYSTEMTIME st;
GetLocalTime(&st); char cTime[] = { '\0' };
_snprintf_s(cTime, sizeof(cTime) - ,
"%04d%02d%02d%02d%02d%02d%03d",
st.wYear,
st.wMonth,
st.wDay,
st.wHour,
st.wMinute,
st.wSecond,
st.wMilliseconds); strTime = cTime;
}
常用函数-Time的更多相关文章
- oracle常用函数及示例
学习oracle也有一段时间了,发现oracle中的函数好多,对于做后台的程序猿来说,大把大把的时间还要学习很多其他的新东西,再把这些函数也都记住是不太现实的,所以总结了一下oracle中的一些常用函 ...
- 总结js常用函数和常用技巧(持续更新)
学习和工作的过程中总结的干货,包括常用函数.常用js技巧.常用正则表达式.git笔记等.为刚接触前端的童鞋们提供一个简单的查询的途径,也以此来缅怀我的前端学习之路. PS:此文档,我会持续更新. Aj ...
- [转]SQL 常用函数及示例
原文地址:http://www.cnblogs.com/canyangfeixue/archive/2013/07/21/3203588.html --SQL 基础-->常用函数 --===== ...
- PHP常用函数、数组方法
常用函数:rand(); 生成随机数rand(0,50); 范围随机数时间:time(); 取当前时间戳date("Y-m-d H:i:s"); Y:年 m:月份 d:天 H:当前 ...
- Oracle常用函数
前一段时间学习Oracle 时做的学习笔记,整理了一下,下面是分享的Oracle常用函数的部分笔记,以后还会分享其他部分的笔记,请大家批评指正. 1.Oracle 数据库中的to_date()函数的使 ...
- Thinkcmf:页面常用函数
Thinkcmf:页面常用函数 全站seo: 文章列表: {$site_seo_title} <!--SEO标题--> {$site_seo_keywords} < ...
- matlab进阶:常用功能的实现,常用函数的说明
常用功能的实现 获取当前脚本所在目录 current_script_dir = fileparts(mfilename('fullpath')); % 结尾不带'/' 常用函数的说明 bsxfun m ...
- iOS导航控制器常用函数与navigationBar常用属性
导航控制器常用函数触发时机 当视图控制器的View将要出现时触发 - (void)viewWillAppear:(BOOL)animated 当视图控制器的View已经出现时触发 - (void)vi ...
- 《zw版·Halcon-delphi系列原创教程》 zw版-Halcon常用函数Top100中文速查手册
<zw版·Halcon-delphi系列原创教程> zw版-Halcon常用函数Top100中文速查手册 Halcon函数库非常庞大,v11版有1900多个算子(函数). 这个Top版,对 ...
- phpcms V9 常用函数 及 代码整理
常用函数 及 常用代码 总结如下 <?php //转换字符串或者数组的编码 str_charset($in_charset, $out_charset, $str_or_arr) //获取菜单 ...
随机推荐
- Fragment的创建与通信
由于这里涉及到接口回调的问题,所以先来看一看什么是接口回调: 这就好比老板和员工的微妙关系,老板需要员工去工作,员工挣钱了以后还要告诉老板自己挣了多少钱,然后由老板来处理这些钱. 首先创建一个接口: ...
- 主动降噪技术(ANC)的前生今世--概念历史
一 概念 假如使用一句通俗的语言来概述ANC的原理的话,那就是:通过发出与噪声相位相反,频率.振幅相同的声波与噪声干涉实现相位抵消. 使用比较正式的语言来解释就是:动降噪通过降噪系统产生与外界噪音相等 ...
- [Linux] telnet 具体到某个端口Connection refused
可以参考这个链接:https://q.cnblogs.com/q/106337/
- html使用空格的替代符号
替代符号就是在需要显示空格的地方加入替代符号,这些符号会被浏览器解释为空格显示. 空格的替代符号有以下几种: 名称 编号 描述 不断行的空白(1个字符宽度) 半个空白(1个字符宽度) ...
- Docker下实战zabbix三部曲之二:监控其他机器
在上一章<Docker下实战zabbix三部曲之一:极速体验>中,我们快速安装了zabbix server,并登录管理页面查看了zabbix server所在机器的监控信息,但是在实际场景 ...
- 每个人都要学的图片压缩终极奥义,有效解决 Android 程序 OOM
# 由来 在我们编写 Android 程序的时候,几乎永远逃避不了图片压缩的难题.除了应用图标之外,我们所要显示的图片基本上只有两个来源: 来自网络下载 本地相册中加载 不管是网上下载下来的也好,还是 ...
- spring boot 配置访问其他模块包中的mapper和xml
maven项目结构如下,这里只是简单测试demo,使用的springboot版本为2.1.3.RELEASE 1.comm模块主要是一些mybatis的mapper接口和对应的xml文件,以及数据库表 ...
- C语言入门-字符串
还是要继续学习,每天给自己打气. 字符数组 char word[] = {'H','e','l','l','o'}; 这不是c语言的字符串,不能用字符串的方式做计算 一.字符串 char word[] ...
- Java基础学习笔记(三) - 抽象类和接口
一.抽象类 没有方法主体的方法称为抽象方法,包含抽象方法的类就是抽象类. Java中使用 abstract 关键字修饰方法和类,抽象方法只有一个方法名,没有方法体. public abstract c ...
- python2和3区别
核心类差异 Python3对Unicode字符的原生支持 Python2中使用 ASCII 码作为默认编码方式导致string有两种类型str和unicode,Python3只支持unicode的st ...