J'ai donc une chaîne avec des chiffres juste et des virgules. Par exemple "1 233,323,32" (chaîne) mais je veux convertir cela à 1233323.32 (double). P>
3 Réponses :
Utiliser NumberFormatter code>:
let formatter = NumberFormatter()
formatter.numberStyle = .decimal
let number = formatter.number(from: "1,233,323.32")
N'oubliez pas que cela échouera probablement pour les utilisateurs d'une locale qui utilise différents séparateurs pour le groupement et la décimale.
Ouais mais c'est "staticstring".
Je ne comprends pas le point de votre réponse. Pour les utilisateurs dans un local qui utilise , code> pour le séparateur décimal, la valeur du numéro
code> sera
nil code> pour une chaîne telle que
1 233,323,32 code>.
Swift 4.x:
Voici votre solution avec une approche manuelle
true occurrence of ',': 2 Ans: 1233323.32
Swift 4:
Donc, fondamentalement, nous avons une chaîne avec des virgules et nous supprimons simplement toutes les virgules de la chaîne, puis nous utilisons Numberformatter pour le convertir en un double. Ce code ne fonctionne que correctement s'il n'y a que des chiffres et des virgules. p> p>
Utilisez
NumberFormatter code>.
Qu'essayez-vous?
J'ai essayé Numberformatter mais je ne suis pas si habile à comprendre quoi faire. Je suis nouveau à Swift
Pourriez-vous publier votre code?