NSDate in voller Stil, aber ohne Jahr
Arbeite ich mit Objective-C für iPhone und haben ein NSDate, dass ich möchte, um die Anzeige in voller Stil, aber ohne das Jahr. Jetzt bin ich mit dem code unten, aber auch show des Jahres, und das will ich nicht. Wie ich zeigen möchte, ist das Datum in der rechten region format kann ich nicht einfach löschen, das Jahr, in dem Ende, wie in manchen Ländern das Jahr wird nicht am Ende sondern in der Mitte oder Anfang.
NSDate *testdate = [NSDate date];
NSDateFormatter *dateFormattertest = [[NSDateFormatter alloc] init];
[dateFormattertest setDateStyle:NSDateFormatterFullStyle];
[dateFormattertest setTimeStyle:NSDateFormatterNoStyle];
NSString *formattedDateString = [dateFormattertest stringFromDate:testdate];
NSLog(formattedDateString);
In US this give me:
Thursday, January 14, 2010
In Sweden this give me:
torsdag, 2010 januari 14
Was ist die Lösung dafür? Und noch eine Frage, wo finde ich Informationen zur Verwendung der setDateFormat von NSDateFormatter? Ich kann nicht finden Informationen, was die verschiedenen Buchstaben stehen für die in der API.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß, das ist eine ziemlich alte Frage, aber diese ist die einzige, die ich gefunden SO, dass die Sprachen über das gleiche Problem, die ich hatte.
Die key-Methode hier zu verwenden ist: dateFormatFromTemplate
Anstatt den Stil, den Sie möchten, um das format als solches:
Besonderen Dank an: http://oleb.net/blog/2011/11/working-with-date-and-time-in-cocoa-part-2/
Swift 3
Spielen mit
template
um Ihre Bedürfnisse anzupassen.Doc und Beispiele hier zu helfen, Sie bestimmen das Muster, das Sie wollen.
Dauerte @Joss großartige Antwort auf einen Swift-Erweiterung:
Swift 4
Hier ist ein swift-option, um nur Tag des Monats auf einem Etikett: