在可可中添加NSTimeInterval到NSDate

21 time cocoa sum nsdate

我有一个NSDate代表特定时间的东西.那个日期的格式是hhmmss.我想NSInterval为该时间值添加一个值(以秒为单位指定).

例:

NSDate =         123000
NSTimeInterval = 3600

Added together = 133000
Run Code Online (Sandbox Code Playgroud)

做这个的最好方式是什么?

Ste*_*ton 53

您是否看过Cocoa手册的日期和时间编程主题

基本上你需要将你的时间转换成NSDate.要将字符串转换为您使用NSDateFormatter该类的日期,或者NSDateComponents如果您已经知道小时,分钟和秒.

NSTimeInterval只是一个双倍(即3600.0).

然后使用dateByAddingTimeIntervalNSDate 的方法添加时间的秒数.

NSDate* newDate = [oldDate dateByAddingTimeInterval:3600.0];
Run Code Online (Sandbox Code Playgroud)

然后,您可以使用NSDateFormatterNSDateComponents重新获得新的时间.


tbo*_*one 8

addTimeInterval现已弃用.请尝试使用dateByAddingTimeInterval.