time_t与string相互转化

方法1, SYSTEMTIME 类型  
  
//指定time_t类型的时间,格式化为YYYYMMDDHH24MISS型的字符串  
void FormatTime(SYSTEMTIME &tm1)  
{  
  TCHAR * szTime = new TCHAR[128];  
  GetLocalTime(&tm1);  
  _stprintf( szTime, _T("%4.4d-%2.2d-%2.2d %2.2d:%2.2d:%2.2d"),  
  
     tm1.wYear, tm1.wMonth+1, tm1.wDay,  
     tm1.wHour, tm1.wMinute,tm1.wSecond);  
    
  delete szTime;  
  szTime = NULL;  
}  
  
//指定YYYYMMDDHH24MISS型的时间,格式化为time_t型的时间  
SYSTEMTIME FormatTime2(TCHAR * szTime)  
{  
  SYSTEMTIME tm1;  
  _stscanf( szTime, _T("%4d-%2d-%2d %2d:%2d:%2d"),     
    &tm1.wYear,   
    &tm1.wMonth,   
    &tm1.wDay,   
    &tm1.wHour,   
    &tm1.wMinute,  
    &tm1.wSecond );  
    return time1;  
}  
  
   
  
方法2, time_t类型  
//指定time_t类型的时间,格式化为YYYYMMDDHH24MISS型的字符串  
void FormatTime(time_t time1, char *szTime)  
{  
    struct tm tm1;  
  
  
#ifdef WIN32  
    tm1 = *localtime(&time1);  
#else  
    localtime_r(&time1, &tm1 );  
#endif  
    sprintf( szTime, "%4.4d%2.2d%2.2d%2.2d%2.2d%2.2d",  
           tm1.tm_year+1900, tm1.tm_mon+1, tm1.tm_mday,  
             tm1.tm_hour, tm1.tm_min,tm1.tm_sec);  
}  
  
  
//指定YYYYMMDDHH24MISS型的时间,格式化为time_t型的时间  
time_t FormatTime2(char * szTime)  
{  
    struct tm tm1;  
    time_t time1;  
  
  
    sscanf(szTime, "%4d%2d%2d%2d%2d%2d",      
          &tm1.tm_year,   
          &tm1.tm_mon,   
          &tm1.tm_mday,   
          &tm1.tm_hour,   
          &tm1.tm_min,  
          &tm1.tm_sec);  
          
    tm1.tm_year -= 1900;  
     tm1.tm_mon --;  
  
  
    tm1.tm_isdst=-1;  
    
    time1 = mktime(&tm1);  
    return time1;  
}  
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值