日期/时间格式转换为4字节长

时间:2015-04-09 15:31:37

标签: c# c++ date datetime time

我正在使用一个输出时间的程序,例如" 2:30 PM",我想在其中添加日期(例如" 04/09/2015 14:30")和最终将其转换为4字节长。如果我用C ++或C#编写代码,我该怎么办?感谢。

3 个答案:

答案 0 :(得分:1)

在C ++ 14中,使用this library,您可以轻松地将其存储为std::chrono::system_clock::time_point

using namespace date;
using namespace std::chrono;
system_clock::time_point tp = sys_days(apr/9/2015) + 14h + 30min;

system_clock::time_point可能存储为8字节有符号整数,而不是4字节整数。如果4字节问题非常重要,您可以像这样创建一个system_clock::time_point的兄弟:

using TimePoint = time_point<system_clock, duration<int32_t, ratio<60>>>;
TimePoint tp = sys_days(apr/9/2015) + 14h + 30min;

TimePoint仍可与system_clock::time_point互操作。

答案 1 :(得分:0)

在C#中试试。

Date.Add(new TimeSpan(0, 0, 0))

TimeOfDay.Add(new TimepSpan(0,0,0))

答案 2 :(得分:0)

我明白了。很简单:

string time = "2:30pm";
DateTime dt = DateTime.Parse(time).ToUniversalTime();
DateTime orig = DateTime(1970, 1, 1, 0, 0, 0, 0);
long ldt = (long)((dt - orig).TotalSeconds);

就是这样。