弄清楚这个日期格式

Figuring out this date format

我正在尝试弄清楚一些可用数字格式的日期的格式。我需要将它们转换为准确的日期。我有一个要转换的示例日期:

1443506173.0  >>  Sep 29, 2015
1443505895.0  >>  Sep 29, 2015
1441805416.0  >>  Sep 09, 2015
1438174556.0  >>  Jul 29, 2015
1436476814.0  >>  Jul 10, 2015
1414994162.0  >>  Nov 03, 2014
1413294207.0  >>  Oct 14, 2014

通过查看前两个条目,我可以看到数字在变化,但都代表相同的日期。意味着必须将时间嵌入到此日期格式中。目前我只关心提取日期,目前不需要提取时间。如果它也足够简单以提取时间,那就太好了。

谁能帮忙解决这个问题?如果您想知道,我从 Instagram post 的提要中获得了这些日期。我使用 WebClient 下载了一张 Instagram 照片 URL。此日期格式位于脚本部分。如果我能够解码这种日期格式,我就会知道照片 post 在 Instagram 上的日期(和时间)是什么。

提前致谢。我正在使用 C# 执行此转换。

Instagram 使用 Unix Timestamp 格式(自 1970 年 1 月 1 日以来的秒数)。

将其转换为 DateTime 对象的一种方法是:

DateTime dateTime = new DateTime(1970,1,1,0,0,0,0,System.DateTimeKind.Utc);
dateTime = dateTime.AddSeconds(yourUnixTimestampValue).ToLocalTime();

这是 UNIX 时间戳

void Main()
{
    var timestamps = new[]{
        new {stamp = 1443506173.0, datetime = new DateTime(2015, 9, 29)},
        new {stamp = 1443505895.0, datetime = new DateTime(2015, 9, 29)},
        new {stamp = 1413294207.0, datetime = new DateTime(2014, 10, 14)}
    };

    Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
    foreach (var i in timestamps)
    {
        Console.WriteLine("Item: {0}, Converted: {1}", i, new DateTime(1970, 1,1).AddSeconds(i.stamp).ToLongDateString());
    }
}

输出:

Item: { stamp = 1443506173, datetime = 09/29/2015 00:00:00 }, Converted: Tuesday, 29 September 2015
Item: { stamp = 1443505895, datetime = 09/29/2015 00:00:00 }, Converted: Tuesday, 29 September 2015
Item: { stamp = 1413294207, datetime = 10/14/2014 00:00:00 }, Converted: Tuesday, 14 October 2014