如何解析日期格式?
在我的应用程序正在使用的其中一个Web服务中,我遇到了以下DateTime格式。
"/Date(1395780377459)/"
这是一些标准的日期格式吗? 如果是这样,如何将其解析为DateTime对象?
编辑:
感谢您的评论。 所以"/Date(1395780377459)/"
对应格林尼治标准时间:星期二,2014年3月25日20:46:17 GMT。 我想知道如何在.net中解析它。 尝试:
string test = "/Date(1395780377459)/"; var datestring = test.Substring(6).TrimEnd(')','/'); var date = new DateTime(long.Parse(datestring));
试过这个:
string test = "/Date(1395780377459)/"; var datestring = test.Substring(6).TrimEnd(')','/'); var epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); var result = epoch.AddSeconds(long.Parse(datestring));
它不起作用。 什么是错的?
它看起来像一个unix时间戳:
http://www.epochconverter.com/ Tue, 25 Mar 2014 20:46:17 GMT
在.NET中:
var epoch = new DateTime(1970,1,1,0,0,0,0,System.DateTimeKind.Utc); var dt = epoch.AddMilliseconds(1395780377459);
(来源: 如何将Unix时间戳转换为DateTime,反之亦然? )
我认为日期是毫秒格式。 所以你可以尝试这个:
DateTime date = new DateTime(long.Parse(1395780377459)); date.ToString("yyyy-MM-ddThh:mm:ssZ");
或简单地说
var time = TimeSpan.FromMilliseconds(1395780377459);
如果日期是json格式,那么你可以尝试这个答案中提到的:
var date = new Date(parseInt(jsonDate.substr(6)));