网易163博客导出的xml文件的日期格式是这样:
<publishTime>1334427118664</publishTime>
对应的时间是2012-04-15 02:11:58。
通过C#代码如何实现由1334427118664得到实际的时间?
不是Ticks,这个时间对应的Ticks是634700527180000000
在stackoverflow中找到答案(How to convert Long type datetime to DateTime with correct time zone):
原来这个数字是当前时间与1970年1月1日之间相差的毫秒数,代码如下:
var unixDate = 1334427118664; var startDate = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); var localDate = startDate.AddMilliseconds(unixDate).ToLocalTime(); Console.WriteLine(localDate);
这个很常用啊,我们项目代码里也有很多是计算1970/1/1的毫秒数表示时间的。
@水牛刀刀: 嗯,开始的时候没想到