Je suis confronté à un problème lors de la conversion date donnée dans le fuseau horaire du système dans iOS. Date de création: 2013-03-18 03:54:18 // sa en format AM La date de destination devrait être: 2013-03-18 03:30:15 // son au format PM.Convertir une date de fuseau horaire dans le fuseau horaire du système dans iOS
Comment puis-je obtenir ce ??
J'ai essayé le code ci-dessous, mais je me suis trompé de données et de différences.
NSDateFormatter *fmt = [[NSDateFormatter alloc] init];
fmt.dateFormat = @"yyyy-MM-dd HH:mm:ss";
NSLog(@"Post date::%@",postDate);
NSDate *utc = [fmt dateFromString:postDate];
fmt.timeZone = [NSTimeZone systemTimeZone];
NSString *local = [fmt stringFromDate:utc];
NSLog(@" local %@", local);
NSDate *date1 = [NSDate date];
NSString *currentDateString = [fmt stringFromDate:date1];
NSDate *currentDate = [fmt dateFromString:currentDateString];
NSUInteger flags = NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit;
NSDateComponents *difference = [[NSCalendar currentCalendar] components:flags fromDate:utc toDate:currentDate options:0];
NSLog(@"difference::%d",[difference day]);
NSLog(@"difference::%d",[difference hour]);
NSLog(@"difference::%d",[difference minute]);
EDIT: Sorties
Post date::2013-03-18 03:20:09
local 2013-03-18 03:20:09
difference::0
difference::13
difference::2
montrent les nslogs ... –
Date de publication :: 18/03/2013 03:20: 09 locale 2013-03-18 03:20:09 différence :: 0 différence :: 13 différence :: 2 –
montrer votre date source comme NSDate objet non en tant que chaîne –