我正在使用具有 datetime 属性的 xml 提供一个 android 应用程序。这里的问题是,应用程序接受 13 位数字的日期时间,如 1347712845061。我无法在 c# 中找到进行此类转换的选项。
有人有什么建议吗?
假设样本值是 2012 年 9 月 15 日星期六 12:40:45 UTC,它仅表示“自 Unix 纪元以来的毫秒数”。(这是 a 中的信息java.util.Date
。)所以你可以写:
private static readonly DateTime UnixEpoch =
new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
public static DateTime FromJavaDate(long millisSinceEpoch)
{
return UnixEpoch.AddMilliseconds(millisSinceEpoch);
}
(您也可以使用 a DateTimeOffset
,它的偏移量始终为 0。)