C++C#时间转换

时间:2024-12-07 10:03:38

time_t是从1970年1月1日的格林尼治时间开始的,所以以下就是你要的结果
System.DateTime time= new System.DateTime(1970, 1, 1).ToLocalTime().AddSeconds(1199351662);

class Program
{
static void Main(string[] args)
{
// 你得到的数字是自格林尼治时间(UTC) 1970 年 1 月 1 日午夜 12:00:00 起的秒数
// 相当于本地时间即北京时间(Local) 1970 年 1 月 1 日上午 8:00:00 起的秒数
double nMinute = 1199351662;

// 得到 1970 年 1 月 1 日午夜 12:00:00, 但其只读属性 Kind 值为 Unspecified,表示它代表了一个未定义时区的时间。
DateTime when = new DateTime(1970, 1, 1);

// 把 Unspecified 时间转换为本地时间。
// 按北京时间会增加8小时
when = when.ToLocalTime();

// 加上时间偏移量,参数单位为秒
when = when.AddSeconds(nMinute);

Console.WriteLine(when);
}
}