2010-12-04 11 views
0

Ich möchte die Datumsformate ändern. Aber ich weiß nicht, wie das Eingabeformat gebendateformatter Problem?

`Do, 2. Dezember 2010 00.28.56 -0500' Ich benutze das Datum Formatierer für Benutzer benutzerdefinierten Format

NSString *inputString = @"Thu, 2 Dec 2010 00:28:56 -0500"; 
    NSDateFormatter *inputFormatter = [[NSDateFormatter alloc] init]; 
    [inputFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss z"]; 

    NSDate *inputDate = [inputFormatter dateFromString:inputString]; 
    NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; 
    [outputFormatter setDateFormat:@"EEE. MMM. d, yyyy"]; 

    NSString *outputDate = [outputFormatter stringFromDate:inputDate]; 
    mylabel.text = outputDate; 

aber Datum nicht anzeigen

bitte geben Sie mir die Lösung

+0

Zunächst sollten Sie überprüfen (und sagen Sie uns), die von der 2 Operationen fehlschlagen: 'dateFromString:' oder 'stringFromDate:'? Auf welches Gebietsschema ist das Gerät eingestellt? Der von Ihnen angegebene Code funktioniert nicht in einem anderen Gebietsschema als Englisch. (Es funktioniert möglicherweise auch nicht mit einem englischen Gebietsschema. Ich habe die Format-Zeichenfolge nicht gründlich überprüft.) –

+0

@Ole Begemann-das Eingabedatum nicht festgelegt .... – Sri

+0

Warum haben Sie die Formatzeichenfolge entfernt, die Sie hatten? Das ist richtig. –

Antwort

1

Der Format-String Sie zeigte uns, bevor Sie Ihre Frage bearbeitet richtig war. Das einzige, was fehlte, war, dass Sie das Datum Formatter Gebietsschema auf Englisch stellen brauchen, wenn Sie es wollen Englisch Monat und Tag-Namen erkennen:

[inputFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]]; 
+0

setLocale funktioniert perfekt danke aber @ "en_US" ist die lokale Sprache eingestellt. Ich möchte die Sprache in Englisch zeigen – Sri

+0

Huh? (PS: Sie sollten Ihre Frage neu editieren und die Format-Zeichenkette hinzufügen, die Sie entfernt haben) –

+0

Überprüfen Sie es jetzt ich bearbeitet – Sri