objective-c - 如何为 NSDate 添加 1 天?

基本上,正如标题所说。我想知道如何将 1 天添加到 NSDate

如果是这样的话:

21st February 2011

它会变成:

22nd February 2011

如果是的话:

31st December 2011

它会变成:

1st January 2012.

最佳答案

Swift 5.0:

var dayComponent    = DateComponents()
dayComponent.day    = 1 // For removing one day (yesterday): -1
let theCalendar     = Calendar.current
let nextDate        = theCalendar.date(byAdding: dayComponent, to: Date())
print("nextDate : \(nextDate)")

Objective-C :

NSDateComponents *dayComponent = [[NSDateComponents alloc] init];
dayComponent.day = 1;

NSCalendar *theCalendar = [NSCalendar currentCalendar];
NSDate *nextDate = [theCalendar dateByAddingComponents:dayComponent toDate:[NSDate date] options:0];

NSLog(@"nextDate: %@ ...", nextDate);

这应该是不言自明的。

https://stackoverflow.com/questions/5067785/

相关文章:

ios - 如何使用 NSURLConnection 与 SSL 连接以获得不受信任的证书?

objective-c - 将项目转换为使用 ARC 时, "switch case is in p

iphone - 我们如何以编程方式检测设备在哪个 iOS 版本上运行?

iphone - 如何检测 iPhone 5(宽屏设备)?

objective-c - 如何将堆栈跟踪打印到控制台/登录 Cocoa?

ios - 如何在 NSLog 中打印 bool 标志?

objective-c - Objective-C中强弱的区别

ios - UIImageView 在设备上的启动屏幕中缺少图像

objective-c - NSDate 获取年/月/日

ios - 为什么苹果推荐使用 dispatch_once 来实现 ARC 下的单例模式?