iPhone开发:使用unix时间?

The*_*ler 2 unix iphone

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

Jed*_*ith 6

Unix时代,时间"0"是1970年1月1日午夜.从那时起,又增加了一秒; 现在我写这篇文章的时间是:

>>> import time
>>> time.time()
1257023557.94208
Run Code Online (Sandbox Code Playgroud)

大多数系统使用Unix时代进行通信,因为它很容易,事实上是标准的,并允许整数运算.您可以通过以下方式获得NSTimeInterval表示自纪元以来的持续时间NSDate:

NSTimeInterval timestamp = [[NSDate date] timeIntervalSince1970];
Run Code Online (Sandbox Code Playgroud)

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

NSString *strtimestamp = [NSString stringWithFormat:"%u", [timestamp unsignedIntegerValue]];
Run Code Online (Sandbox Code Playgroud)

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

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