cosa si sta facendo male è che non hai fatto nulla per associare la data con il formattatore. Quindi, si vuole fare qualcosa di simile:
NSLog(@"Todays date is %@", [formatter stringFromDate:todaysDate];
Il NSDate
non sa nulla sulla formattazione (solo informazioni aggiornate), e per la squadra di NSDateFormatter
davvero sapere nulla circa le date, proprio come formattare loro. Quindi devi usare metodi come -stringFromDate:
per formattare effettivamente la data per un display abbastanza leggibile da umani.
Se ciò che è necessario è quello di vedere solo le informazioni sulla data e non hanno bisogno di un particolare formato, non è necessario un formattatore per registrare una data:
NSLog(@"Todays date is %@", todaysDate);
funzionerà bene per darvi la -description
dell'oggetto NSDate
. Non lo userei per tutto ciò che mostri all'utente (usa uno NSDateFormatter
per quello), ma questo è utile se stai solo eseguendo il debug e hai bisogno di vedere le informazioni su un oggetto NSDate
.
'NSLog (@ "La data è% @", todaysDate);' - Certo sarà registrata la data nel formato lungo e fuso orario UTC, quindi è necessario capire quella. Per usare un formattatore devi fare 'NSLog (@" La data è% @ ", [formatter stringFromDate: todaysDate]);'. –
Non correlato ma utilizzare 'yyyy' per l'anno non' YYYY'. Vedi http://stackoverflow.com/questions/3063068/weird-behavior-when-creating-an-nsdate-of-january-the-1st-and-the-2nd per i dettagli. – Anna