/ / Porovnanie dvoch dátumov (aktuálny dátum a dátum z databázy) - sql, object-c, nsdate

Porovnanie dvoch dátumov (aktuálny dátum a dátum z databázy) - sql, objective-c, nsdate

Snažím sa porovnať dva dátumy jeden z databázy a druhý je aktuálny dátum systému. Dátum z databázy je analyzovaný na reťazec a chcem ho transformovať na NSDate , problémom, ktorému čelím, je to NewsDate je nil.

  -(void)viewDidLoad
{

// Do any additional setup after loading the view.
self.title=self.ntitle;
_lblDate.text=self.ndateNews;
_lblDetail.text=self.ndetails;
_lblTitre.text=self.title;
NSDate *currDate=[NSDate date];
NSDateFormatter *DateFormats=[[NSDateFormatter alloc ]init];
[DateFormats setDateFormat:@"MM-DD-yyyy hh:mm:ss +EEEE"];
NSLog(@"selected date  %@",self.ndateNews);
NSDate *NewsDate=[DateFormats dateFromString:self.ndateNews];
NSLog(@"string transformed   into date %@",NewsDate);
NSLog(@" system date %@",currDate);



if ([currDate isEqualToDate:NewsDate]){

_lblDate.text=@"today";

}

}

odpovede:

1 pre odpoveď č. 1

Používate nesprávny formát formátu dátumu informácie nájdete na tejto stránke.

yyyy-MM-dd"T"HH:mm:ssZZZZZ

Je to, čo chcete pre formát dátumu.

Tiež ak to chcete skontrolovať NewsDate dnes by ste mali použiť:

BOOL today = [[NSCalendar currentCalendar] isDateInToday:NewsDate];

Kontrola, či sa dátum rovná NSDate date chcel by som, aby sa dátumy zhodovali presne - do milisekundy!

Poznač si to -isDateInToday: je Iba pre iOS 7, Zanechajte komentár, ak chcete verziu, ktorá funguje aj pre iOS 6 :)