Was Sie falsch zu machen ist, dass Sie haben nichts getan, um das Datum mit dem Formatierer zu verknüpfen. So würden Sie so etwas wie dies tun wollen:
NSLog(@"Todays date is %@", [formatter stringFromDate:todaysDate];
Die NSDate
weiß nichts über die Formatierung (nur Informationen stammen) und die NSDateFormatter
tut wirklich etwas über Termine wissen, nur wie sie zu formatieren. Also müssen Sie Methoden wie -stringFromDate:
verwenden, um das Datum für eine ziemlich menschenlesbare Anzeige zu formatieren.
Wenn das, was Sie brauchen, ist nur die aktuellen Informationen zu sehen und nicht ein bestimmtes Format benötigen, können Sie keine Formatierer brauchen ein Datum zu protokollieren:
NSLog(@"Todays date is %@", todaysDate);
wird funktionieren Sie das geben, -description
des Objekts NSDate
. Ich würde dies nicht für irgendetwas verwenden, das Sie dem Benutzer anzeigen (verwenden Sie dafür eine NSDateFormatter
), aber das ist praktisch, wenn Sie nur Debuggen und Informationen über ein NSDate
Objekt benötigen.
'NSLog (@ "Das Datum ist% @", todaysDate);' - Natürlich ist das Datum im Langformat und UTC-Zeitzone angemeldet werden, so müssen Sie verstehen, Das. Um einen Formatierer zu verwenden, würden Sie 'NSLog (@" Das Datum ist% @ ", [Formatierer StringFromDatum: TodayDate]);'. –
Nicht verwandt, aber verwenden Sie 'yyyy' für das Jahr nicht' YYYY'. Siehe http://stackoverflow.com/questions/3063068/weird-behavior-when-creating-annsdate-of-january-the-1st-and-the-2nd für Details. – Anna