将UTC时间转换为CString格式

Convert UTC time into CString format

本文关键字:CString 格式 转换 UTC 时间      更新时间:2023-10-16

我需要以Unix UTC格式获得当前系统时间并将其转换为CString。我想这样做

CTime time = CTime::GetCurrentTime();  
CString string = time.FormatGmt(L"%d");  

代码正在运行,但是'string'变量包含错误的值,它应该包含类似'1011173512'的内容,即自1970年以来以秒为单位的时间。有人知道为什么吗?

函数CTime::FormatGmt使用与strftime相同的格式规则。

  • https://msdn.microsoft.com/en-us/library/fe06s4ak.aspx

其中,%d表示"月中的第几天,十进制数(01 - 31)"。

我怀疑你想要一个time_t或类似的对象。我建议你想要GetTime方法,它返回一个_time64_t

  • https://msdn.microsoft.com/en-us/library/3s7y67z7.aspx

:

CTime time = CTime::GetCurrentTime();  
CString string; string.Format(L"%lld", time.GetTime());