如何在C#中将CFAbsoluteTime转换为DateTime?

时间:2010-10-30 12:52:51

标签: c# objective-c

有人能告诉我怎样才能将我知道的MacA CFAbsoluteTime值转换为C#中的DateTime值?

2 个答案:

答案 0 :(得分:1)

CFAbsoluteTime是一个双倍,是自2001年1月1日上午12点以来的秒数。因此:

    public static DateTime CFAbsoluteTimeToDateTime(double abs) {
        long ticks = (long)(abs * 1E7);  // 1 tick == 100 nsec
        return new DateTime(new DateTime(2001, 1, 1).Ticks + ticks);
    }

答案 1 :(得分:0)

事实证明,我可以使用以下代码转换它:

TimeSpan span = TimeSpan.FromSeconds(CFAbsoluteTimeFloatValue);
var cshartpDateTime = new DateTime(2001, 1, 1).Add(span);