#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的更多相关文章

  1. oracle常用函数及示例

    学习oracle也有一段时间了,发现oracle中的函数好多,对于做后台的程序猿来说,大把大把的时间还要学习很多其他的新东西,再把这些函数也都记住是不太现实的,所以总结了一下oracle中的一些常用函 ...

  2. 总结js常用函数和常用技巧(持续更新)

    学习和工作的过程中总结的干货,包括常用函数.常用js技巧.常用正则表达式.git笔记等.为刚接触前端的童鞋们提供一个简单的查询的途径,也以此来缅怀我的前端学习之路. PS:此文档,我会持续更新. Aj ...

  3. [转]SQL 常用函数及示例

    原文地址:http://www.cnblogs.com/canyangfeixue/archive/2013/07/21/3203588.html --SQL 基础-->常用函数 --===== ...

  4. PHP常用函数、数组方法

    常用函数:rand(); 生成随机数rand(0,50); 范围随机数时间:time(); 取当前时间戳date("Y-m-d H:i:s"); Y:年 m:月份 d:天 H:当前 ...

  5. Oracle常用函数

    前一段时间学习Oracle 时做的学习笔记,整理了一下,下面是分享的Oracle常用函数的部分笔记,以后还会分享其他部分的笔记,请大家批评指正. 1.Oracle 数据库中的to_date()函数的使 ...

  6. Thinkcmf:页面常用函数

    Thinkcmf:页面常用函数 全站seo: 文章列表: {$site_seo_title}        <!--SEO标题--> {$site_seo_keywords}   < ...

  7. matlab进阶:常用功能的实现,常用函数的说明

    常用功能的实现 获取当前脚本所在目录 current_script_dir = fileparts(mfilename('fullpath')); % 结尾不带'/' 常用函数的说明 bsxfun m ...

  8. iOS导航控制器常用函数与navigationBar常用属性

    导航控制器常用函数触发时机 当视图控制器的View将要出现时触发 - (void)viewWillAppear:(BOOL)animated 当视图控制器的View已经出现时触发 - (void)vi ...

  9. 《zw版·Halcon-delphi系列原创教程》 zw版-Halcon常用函数Top100中文速查手册

    <zw版·Halcon-delphi系列原创教程> zw版-Halcon常用函数Top100中文速查手册 Halcon函数库非常庞大,v11版有1900多个算子(函数). 这个Top版,对 ...

  10. phpcms V9 常用函数 及 代码整理

    常用函数 及 常用代码 总结如下 <?php //转换字符串或者数组的编码 str_charset($in_charset, $out_charset, $str_or_arr) //获取菜单 ...

随机推荐

  1. Linux 笔记 - 第十九章 配置 Squid 正向代理和反向代理服务

    一.简介 Squid 是一个高性能的代理缓存服务器,对应中文的乌贼,鱿鱼的意思.Squid 支持 FTP,gopher 和 HTTP 协议.和一般的代理缓存软件不同,Squid 用一个单独的,非模块化 ...

  2. SpringBoot区块链之以太坊区块高度扫描(简洁版)

    继续昨天的demo往下写写:[SpringBoot区块链之以太坊开发(整合Web3j)](https://juejin.im/post/5d88e6c1518825094f69e887),将复杂的逻辑 ...

  3. jmeter基础使用

    1.ServerAgent是服务端的插件2.下载成功后,复制JmeterPlugins-Extras.jar和JmeterPlugins-Standard.jar两个文件,放到jmeter安装文件中的 ...

  4. Spring boot 梳理 - Spring boot 与 JSP

    若使用Spring boot 开发web应用中使用jsp,需要打包成war,并部署到非嵌入式servlet容器中运行,在嵌入式servlet中无法运行,且需要匹配非嵌入式servlet版本与Sprin ...

  5. 读取unicode日志文件并清除记录的垃圾文件

    //读取unicode文件,并清除记录的垃圾文件 //参数1:日志文件路径 bool ReadFilePath(const wchar_t *DataFilePath) { wchar_t ChBuf ...

  6. 使用springboot最新版本mysql-Connector连接数据库时报错解决

    在连接数据库时,使用了最新版本的mysql-Connector,即6.0以上版本 1.报错如下: Loading class `com.mysql.jdbc.Driver'. This is depr ...

  7. mybatis <=或这个>=提示错误Tag name expecte问题解决

    解决方案: 1.将<号或者>号进行转义 DATE_SUB(CURDATE(), INTERVAL 31 DAY) <= DATE(created) 2.使用<![CDATA[ ...

  8. .net core 3.0 Signalr - 07 业务实现-服务端 自定义管理组、用户、连接

    Hub的管理 重写OnConnectedAsync 从连接信息中获取UserId.Groups,ConnectId,并实现这三者的关系,存放于redis中 代码请查看 using CTS.Signal ...

  9. python datetime和time的一些疑惑解答 及 获取上年同期、上月等日期

    关于datetime和time有几个疑惑的 1.datetime.datetime.now()——为什么需要两个datetime才能返回当前时间,同样的time只需要time.localtime() ...

  10. 瀑布流实例及懒加载(echo.js)

    瀑布流布局: 图片等宽,不定高,按最低高度来顺序排列:实现方法:获取每次获取四行中最低高度对应的一行,将下一张加载的图片放在该位置,每次加载前都获取最低高度: ①请求图片的接口    地址此php文件 ...