2010-08-04 7 views
3

J'ai analysé le fichier .ics et obtenu la date de début sous forme de chaîne, la chaîne contient une valeur comme celle-ci 20100803T130451Z (chaîne de date formatée), je veux convertir cette chaîne dans la chaîne requise Format ....Convertir la chaîne de date au format de chaîne de date requis

Mon format requis de chaîne de date est (mardi - mai 25,2010 (comme ça))

quelqu'un peut-il me aider? Merci d'avance .....

Répondre

5

Ole a raison, voici un exemple de code.

Ce:

NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"yyyyMMdd'T'HHmmss'Z'"]; 
NSDate* date = [dateFormatter dateFromString:dateString]; 

devrait faire la conversion du NSString à un NSDate. Pour obtenir le format de date souhaité, vous pouvez modifier le format de date NSDateFormatters. Comme ceci:

[dateFormatter setDateFormat:@"dddd - MMMM dd,yyy"]; 
NSString* myNiceLookingDate = [dateFormatter stringFromDate:date]; 
[dateFormatter release]; 

Cela devrait fonctionner, même si je ne l'ai pas testé, mais il vous obtenir au moins plus proche du résultat.

amusez-vous, phil.

+0

Ce code ne fonctionne que dans 3.2 ne fonctionne pas dans iphone sim 4.0.Toutes les idées? – dragon

+0

oui, vous avez raison - testé: il semble que la dateFormatter est un peu plus sensible dans iOS 4. Réglage de la dateFormat de la façon suivante: [dateFormatter setDateFormat: @ "yyyyMMdd'T'HHmmss'Z '"]; devrait résoudre votre problème. Je l'ai corrigé dans le post. – hellphil

+0

Merci. ça a bien fonctionné – dragon

1
  1. Créer un NSDateFormatter pour convertir la chaîne de date à un objet NSDate.
  2. Créez une seconde NSDateFormatter (ou modifiez la chaîne de format du premier) pour convertir le NSDate en chaîne.
Questions connexes