C++ 将UTC时间转换为CString格式

C++ 将UTC时间转换为CString格式,c++,mfc,C++,Mfc,我需要以Unix UTC格式获取当前系统时间,并将其转换为CString。我正试着这样做 CTime time = CTime::GetCurrentTime(); CString string = time.FormatGmt(L"%d"); 代码正在运行,但“string”变量包含错误的值,它应该包含类似“1011173512”的内容,即自1970年以来以秒为单位的时间。有人知道为什么吗 函数CTime::FormatGmt使用与strftime相同的格式规则 特别是,%d表示十进

我需要以Unix UTC格式获取当前系统时间,并将其转换为CString。我正试着这样做

CTime time = CTime::GetCurrentTime();  
CString string = time.FormatGmt(L"%d");  
代码正在运行,但“string”变量包含错误的值,它应该包含类似“1011173512”的内容,即自1970年以来以秒为单位的时间。有人知道为什么吗

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

特别是,%d表示十进制数字01–31的月份日期

我怀疑你想要一个时间或类似的东西。我建议您使用GetTime方法,它返回一个_time64_t

因此:


当你说不起作用时,你是什么意思?你有生成错误吗?那么你会犯什么错误呢?您是否遇到运行时错误或崩溃?这在哪里?涉及变量的值是多少?你会得到意想不到的结果吗?那么对于一些特定的输入,您的实际输出和预期输出是什么?如果您认为这以一种可接受的方式回答了您的问题,那么“string”变量包含一个错误的值,它应该包含类似于“1011173512”@IaroslavVivat的内容,您应该通过单击答案旁边的复选标记来标记它,例如,在中的和。
CTime time = CTime::GetCurrentTime();  
CString string; string.Format(L"%lld", time.GetTime());