time_t转换为DateTime

时间:2022-06-17 17:07:51

最近解析文华财经的日线数据。

取得的第一个字段是日期,为time_t格式(long)的。

因为是用C#来写解析程序,所以要转换为DateTime的。

time_t是世界时间,要转换为本地时间,所以要加8小时(即28800秒)。用下面的代码转换即可。

     double secs = Convert.ToDouble(seconds);
            DateTime dt = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Unspecified).AddSeconds(secs);
            //TimeSpan span = TimeSpan.FromTicks(seconds * TimeSpan.TicksPerSecond);
            //DateTime dt = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Local).Add(span);
            return dt;// System.TimeZone.CurrentTimeZone.ToLocalTime(dt);

以上代码的原始链接:http://www.soaspx.com/dotnet/csharp/csharp_20091203_1897.html