Je suis mon NSDateFormatter initialisation ainsi:Convertir NSDate à NSString avec NSDateFormatter avec TimeZone sans GMT Heure Modificateur
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"] autorelease]];
[dateFormatter setDateFormat:@"EEE, d MMM yyyy HH:mm:ss z"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
NSDate *date = [NSDate date];
NSString *dateString = [dateFormatter stringFromDate:date];
dateString
est maintenant:
Thu, 29 Jul 2010 14:58:42 GMT+00:00
Je veux se débarrasser de la « + 00:00 "
Je devine de http://unicode.org/reports/tr35/tr35-6.html#Time_Zone_Fallback que je pourrais avoir un problème de localisation. Je travaille autour de cela en supprimant le "+00: 00" manuellement, mais ce n'est pas idéal.
EDIT
J'ai essayé quelques nouvelles façons de créer le NSTimeZone, mais ils ont tous deux produisent la même dateString
:
[NSTimeZone timeZoneWithName:@"GMT"];
[NSTimeZone timeZoneWithName:@"UTC"];
[NSTimeZone timeZoneWithAbbreviation:@"GMT"];
[NSTimeZone timeZoneWithAbbreviation:@"UTC"];
+1 pour la question intéressante. Je ne peux pas le comprendre moi-même. BTW, vous voudrez peut-être savoir à propos d'une fuite de mémoire possible en utilisant le spécificateur «z»: http://thegothicparty.com/dev/article/nsdateformatter-memory-leak/ –
+1 pour l'utilisation de "donc" –