Quelle chaîne de format est-ce que j’utilise pendant des millisecondes dans les chaînes de date sur iPhone?

Je dois parsingr les chaînes dans un format comprenant des millisecondes. Quel format de chaîne est-ce que j’utilise pour obtenir la bonne valeur de date?

Par exemple, supposons que j’ai une chaîne avec la valeur suivante: “2011-06-23T13: 13: 00.000”

Quelle chaîne de format est-ce que je passe à mon NSDateFormatter dans le code suivant?

NSSsortingng *dateValue = @"2011-06-23T13:13:00.000"; NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; NSSsortingng *formatSsortingng = @"yyyy-MM-dd'T'HH:mm:ss.???"; [formatter setDateFormat:formatSsortingng]; NSDate *date = [formatter dateFromSsortingng:dateValue]; 

Qu’est-ce que j’utilise à la place de ??? dans le code ci-dessus?

C’est SSS , conformément à la spécification Unicode Locale Data Markup Language .

 "yyyy-MM-dd'T'HH:mm:ss.SSS" 

Plus généralement, utilisez un nombre quelconque de caractères S en majuscule pour obtenir autant de décimales dans le composant des fractions de seconde. (Ainsi, ss.S affichera l’heure au dixième de seconde près, par exemple.)

Le guide des formats de format de date suggère que “S” est le spécificateur de format pour les fractions de secondes.

Vous devez passer le même nombre de «S» à la fin, par exemple Ma date était ‘2015-11-17T03: 36: 45.041503Z’ le utilisé aaaa-MM-jj’T’HH: mm: ss.SSSSSSz’ formateur, je veux dire voir le nombre de «S» est 6 comme 6 chiffres entrant en date.

utiliser fff pour trois décimales de seconde

 "yyyy-MM-dd'T'HH:mm:ss.SSS"