İki NSInteger yıl, ay bir ay geri gitmek istiyorum. Örneğin. şimdi 2011-012010-12'u nasıl edinebilirim? ekleyerek bir şey, ama ben bırakmak istiyorum. Umarım birisi bana biraz yardımcı olabilir.NSDate substract bir ay
NSDate *date = [NSDate date];
NSDateComponents *dateComponents = [calendar components:unitFlags fromDate:date];
NSInteger year = [dateComponents year];
NSInteger month = [dateComponents month];
[calendar release];
NSString * pdf_name = [NSString stringWithFormat:@"file_%d_%02d.pdf", year, month];
Endo
EDIT selamlıyor: Benim çözümüm
NSCalendar *calendar= [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSCalendarUnit unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
NSDate *date = [NSDate date];
NSDateComponents *dateComponents = [calendar components:unitFlags fromDate:date];
NSInteger year = [dateComponents year];
NSInteger month = [dateComponents month];
BOOL substractOneMonth = YES;
if (substractOneMonth) {
if (month==1) {
year--;
month = 12;
}else {
month--;
}
}
[calendar release];
NSString * pdf_name = [NSString stringWithFormat:@"file_%d_%02d.pdf", year, month];
Çözünürlüğü ile gidiyorum ne zaman üzgün: 4021-12-12 08:32:40 +0000 –
Huh, bu garip. İşte çıkışım: 2011-01-06 03:49:28 +0000 ve 2010-12-06 03:49:28 +0000. Neden farklı sonuçlar gördüğümüze dair bir açıklama duymak isterim. – donkim
Bunu yapmanın doğru yolu budur. –