2013-08-07 7 views
8

ho una stringa come questaIOS come impostare il formato della data

NSString *datestr = @"2013-08-06T03:51:54+00:00"; 

cerco di impostare dateformat come di seguito:

NSDateFormatter *dformat = [[NSDateFormatter alloc]init]; 

[dformat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss"]; 

NSDate *date = [dformat dateFromString:datestr]; 

Ma la data sarà pari a zero, così, qualcuno può dirmi come impostare il dataformat, thx!

+3

Non un giorno senza dupe 'NSDateFormatter' !! – Amar

+0

Voglio "2015-12-31T01: 45: 00.5876454 + 05: 30" questo? – python

+0

Il titolo di questa domanda è più adatto alla ricerca rispetto alla domanda con risposta precedente e l'altra domanda non ha una risposta accettata – Gerald

risposta

12

Prova questo:

NSDateFormatter *dformat = [[NSDateFormatter alloc]init]; 

[dformat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZZ"]; 

NSDate *date = [dformat dateFromString:datestr]; 

Aggiungere ZZZ alla fine del formattatore.

+1

-1 perché errata. apri Xcode e mettiti alla prova. –

+1

L'ho provato, non funziona. – billwang1990

1

cercano di seguito:

NSString *dateString = @"2013-08-06T03:51:54+00:00"; 
NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
formatter.dateFormat = @"yyyy-MM-dd'T'HH:mm:ssZ"; 

NSDate *date; 
NSError *error; 
[formatter getObjectValue:&date forString:dateString range:nil error:&error]; 
+0

Ho ottenuto il risultato, grazie – billwang1990

6

provare questo codice

NSString *datestr = @"2013-08-06T03:51:54+00:00"; 
NSDateFormatter *dformat = [[NSDateFormatter alloc]init]; 

[dformat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssz"]; 

NSDate *date = [dformat dateFromString:datestr]; 

uso piccola z dove z ti danno - con il formato specifico non-posizione. Laddove non è disponibile, ritorna al formato GMT localizzato. Utilizzare da una a tre lettere per il formato breve o quattro per il formato completo. Nel formato breve, i nomi metazone non vengono utilizzati a meno che la bandiera commonlyUsed è nel locale

per la zona per ulteriori informazioni sui modelli di Data Format in Objective C riferisce questo link http://www.unicode.org/reports/tr35/tr35-19.html#Date_Format_Patterns speranza che questo vi aiuterà

+1

grazie, è giusto! – billwang1990

+0

Ricorda inoltre che le stringhe di formato possono essere magicamente riscritte in alcune regioni a volte https://developer.apple.com/library/ios/qa/qa1480/_index.html – Earlz