Visual C++ 如何将日期时间转换为自 1970 年以来的秒数
Posted
技术标签:
【中文标题】Visual C++ 如何将日期时间转换为自 1970 年以来的秒数【英文标题】:Visual C++ how to convert Datetime to number of seconds since 1970 【发布时间】:2013-05-02 06:28:52 【问题描述】:我正在尝试转换日期时间: http://msdn.microsoft.com/en-us/library/03ybds8y
自 1970 年以来使用 Visual C++ 的秒数。
我搜索了许多解决方案,但无法使它们中的任何一个起作用。 谢谢
【问题讨论】:
【参考方案1】:您可以使用两个日期之间的差异TimeSpan
来执行此操作。像这样的:
DateTime dtDateYouWantToConvert = /* .... */
DateTime dtReference(1970, 1, 1, 0, 0, 0);
TimeSpan tsDiff = dtDateYouWantToConvert - dtReference;
// calculate number of seconds (including fractional) since 1/1/1970
double dSeconds = tsDiff.TotalSeconds;
【讨论】:
您好,谢谢您的回答。 另一个小问题,如何将秒数转换回字符串形式的时间?我的意思是从 dSeconds 回到 DateTime? 只需将TimeSpan
添加(或减去)到DateTime
,您将得到一个DateTime
,您可以格式化,或使用TimeSpan.ToString(format)
获取TimeSpan
的字符串.
如何将秒数转换为日期时间?
我找到了一个有效的答案,我不知道是否有更简单的东西:time_t ts;双 dSeconds = tsDiff.TotalSeconds; ts = (time_t) dSeconds;结构 tm *tm_ts = gmtime(&ts);字符 str_temp44 [80] = ""; strftime (str_temp44, 80, "%a, %d.%m.%Y %H:%M:%S", tm_ts);以上是关于Visual C++ 如何将日期时间转换为自 1970 年以来的秒数的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Visual Studio 中为自定义配置文件添加配置转换?
如何将 Python 日期时间对象的时间部分转换为自一天开始以来的总秒数
将日期、时间和 UTC 偏移值转换为自 unix 纪元以来的毫秒数?