如何将时间戳转换为日期时间?

Tha*_*est -1 c# firefox timestamp epoch

我想将纪元转换为人类可读的日期,反之亦然。
我想用C#写一些类似链接的东西。

将 Firefox 中的 place.sqlite 文件中的日期转换为 DateTime。

static void Main(string[] args)
{
    //1540787809621000
    string epoch = "1540787809621000";
}

private string epoch2string(int epoch) {
    return 
        new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)
            .AddSeconds(epoch)
            .ToShortDateString(); 
}
Run Code Online (Sandbox Code Playgroud)

int size 不够 我尝试了很长的纪元但不起作用

Mat*_*son 13

您的时间是以微秒为单位的 Unix 时间。

如果您使用 .Net 4.6 或更高版本,您可以将其转换为 a,DateTime如下所示。

long time = 1540787809621000; // Unix time in microseconds.

time /= 1000; // Divide by 1,000 because we need milliseconds, not microseconds.

DateTime result = DateTimeOffset.FromUnixTimeMilliseconds(time).DateTime;

Console.WriteLine(result); // Prints 29/10/2018 04:36:49 (UK format)
Run Code Online (Sandbox Code Playgroud)