iPhone开发:使用unix时间?

时间:2009-10-31 21:10:19

标签: iphone unix

我实际上正在使用fbconnect,而我正试图获得一个月前的unix时间。自1970年以来我真的很困惑。因为有些身体在正确的方向上给我一点意见吗?

1 个答案:

答案 0 :(得分:6)

使用Unix epoch,时间“0”是1970年1月1日午夜。此后每隔一秒,又增加了一秒;现在我写这篇文章的时间是:

>>> import time
>>> time.time()
1257023557.94208

大多数系统使用Unix时代进行通信,因为它很容易,事实上是标准的,并允许整数运算。你可以从NSTimeInterval得到一个代表自纪元以来持续时间的NSDate

NSTimeInterval timestamp = [[NSDate date] timeIntervalSince1970];

NSTimeInterval只是一个双倍。如果你想要一个整数 - 我想象fbconnect需要 - 只需转换它(未经测试):

NSString *strtimestamp = [NSString stringWithFormat:"%u", [timestamp unsignedIntegerValue]];

请记住,这只是一个计数。您可以通过减去3600(60 * 60)减去一小时,通过添加86400(24 * 60 * 60)添加一天,依此类推;但是,在你的情况下,最好从表示你想要的特定时间的NSDate开始,并允许库为你做算术。

NSDate可能只是这些时间戳的包装。