Chiedo a un database la data di un oggetto. Ricevo una stringa in questo modo: 2011-08-16T19:03:21.000Z
(Eccone un'altra: 2011-08-12T02:13:16.000Z
);Ottieni data da String '2011-08-16T19: 03: 21.000Z'
Edit: Ecco un altro che ho fatto 16 agosto 2011, alle 12:51 a scopo di test: 2011-08-16T19:51:24.000Z
voglio convertire questa data in un altro formato per la visualizzazione. Questo formato potrebbe cambiare in futuro, quindi non voglio fare una manipolazione diretta delle stringhe. La cosa migliore da fare è trasformarlo in un NSDate e quindi tornare alla stringa correttamente formattata. Tuttavia, non posso, per la vita di me, ottenere la stringa darn in un NSDate.
- (NSString *)makeDateStringReadable:(NSString *)dateString {
NSLog(@"The String: %@", dateString);
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-ddTHH:mm:ss.zzzz"];
NSDate *theDate = [formatter dateFromString:dateString];
NSLog(@"The Date: %@", theDate);
[formatter setDateFormat:@"yyyy-MM-dd"];
NSString *finalString = [formatter stringFromDate:theDate];
[formatter release];
return finalString;
}
La stringa originale viene passato, ed è disconnesso, ma il "The Date:" log mostra sempre nullo. Suppongo che il formato non sia corretto ... ma non riesco a farlo correggere. Ho provato a usare anche this come riferimento.
È possibile ottenere l'aiuto di un guru di DateFormatter? Grazie mille!
È possibile trovare un'implementazione funzionante qui: http://devbytom.blogspot.fr/2011/04/rfc-3339-dates-and-ios-parsing.html – Martin
Formato di lavoro: '[formatter setDateFormat: @ "yyyy -MM-dd'T'HH: mm: ss.SSS'Z '"];' Copiato dal seguente commento. –