在 C++ 中将日期和时间字符串转换为无符号__int64

converting date and time string to unsigned __int64 in C++

本文关键字:转换 无符号 字符串 int64 时间 C++ 日期      更新时间:2023-10-16

我在 c++ 中有一个要求,我必须读取一个包含日期和时间的文件并将其转换为unsigned __int64

例如,我有一个包含以下数据的文件"mytime.txt"。

2012-06-25 05:32:06.963

如何将其转换为unsigned __int64,以及如何从unsigned __int64转换回上述字符串以写入文件并验证它是否已正确转换为unsigned __int64

我正在 VS.NET C++编译器中处理窗口。

我不应该使用boost.

您可以使用strptime将字符串转换为结构,然后使用它转换为time_t并使用gmtime进行反向操作

struct tm tm;
time_t epoch;
if ( strptime(timestamp, "%Y-%m-%d %H:%M:%S", &tm) != NULL )
  epoch = mktime(&tm);
// Reverse 
  struct tm * ptm;
  time ( &epoch );
  ptm = gmtime ( &epoch );