• 摘:C++日期时间与字符串间的转换


     

    VC6

    CString sTime = _T("2007-10-26 13:20:30"); 

    char *charTime = (LPSTR)(LPCTSTR)sTime;

    CString sFormat = _T("%d-%d-%d %d:%d:%d");

    char *charFormat = (LPSTR)(LPCTSTR)sFormat;

    int nYear;

    int nMonth;

    int nDate;

    int nHour;

    int nMin;

    int nSec; 

    stscanf(charTime,charFormat,&nYear,&nMonth,&nDate,&nHour,&nMin,&nSec);

    CTime t(nYear,nMonth,nDate,nHour,nMin,nSec);

    CString s = t.Format(_T("%Y%m%d%H%M%S"));

    VC2005

    不含中文格式

    stscanf(charTime,charFormat,&nYear,&nMonth,&nDate,&nHour,&nMin,&nSec); 

    CString sTime = _T("2007-10-26 12:40:10"); 

    TCHAR *charTime = (TCHAR*)(LPCTSTR)sTime;

    CString sFormat = _T("%d-%d-%d %d:%d:%d");

    TCHAR *charFormat = (TCHAR*)(LPCTSTR)sFormat;

    int nYear;

    int nMonth;

    int nDate;

    int nHour;

    int nMin;

    int nSec; 

    _stscanf(charTime,charFormat,&nYear,&nMonth,&nDate,&nHour,&nMin,&nSec);

    CTime t(nYear,nMonth,nDate,nHour,nMin,nSec);

    CString s = t.Format(_T("%Y-%m-%d %H:%M:%S"));

    含中文格式

    要包含#include <locale.h>

    CString sTime = _T("2007-10-26 12:40:10"); 

    TCHAR *charTime = (TCHAR*)(LPCTSTR)sTime;

    CString sFormat = _T("%d-%d-%d %d:%d:%d");

    TCHAR *charFormat = (TCHAR*)(LPCTSTR)sFormat;

    int nYear;

    int nMonth;

    int nDate;

    int nHour;

    int nMin;

    int nSec; 

    _stscanf(charTime,charFormat,&nYear,&nMonth,&nDate,&nHour,&nMin,&nSec);  

    CTime t(nYear,nMonth,nDate,nHour,nMin,nSec);

    _tsetlocale(LC_ALL,_T("Chinese-simplified")); //本地化

    CString s = t.Format(_T("%Y%m%d%H%M%S"));

     

  • 相关阅读:
    晚上打死个老鼠
    今早服务器出现的问题
    打球
    出于对Atlas自带AutoCompleteBehavior的不满,自定义了一个支持模版的AutoCompleteBehavior
    PetShop4.0项目分解
    WebSnapr-生成你的网站缩略图
    Lost HTML Intellisense within ASP.NET AJAX Controls
    调整调出输入法的顺序
    儿童网址大全
    gridview列 数字、货币和日期 显示格式
  • 原文地址:https://www.cnblogs.com/shenchao/p/3208384.html
Copyright © 2020-2023  润新知