-3
votes

Dans une chaîne avec des chiffres juste et des virgules comment puis-je convertir cela en un double

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).


4 commentaires

Utilisez NumberFormatter .


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?


3 Réponses :


1
votes

Utiliser NumberFormatter code>:

let formatter = NumberFormatter()
formatter.numberStyle = .decimal
let number = formatter.number(from: "1,233,323.32")


3 commentaires

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 , pour le séparateur décimal, la valeur du numéro sera nil pour une chaîne telle que 1 233,323,32 .



-1
votes

Swift 4.x:

Voici votre solution avec une approche manuelle

true
occurrence of ',': 2
Ans: 1233323.32


0 commentaires

0
votes

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. XXX

Ce code ne fonctionne que correctement s'il n'y a que des chiffres et des virgules.


0 commentaires