Comment puis-je obtenir des symboles de devise de code de la devise de l'iphone?
J'ai get code de la devise (par exemple: USD, EUR, INR) à partir de webservice réponse. J'ai besoin de montrer les symboles des devises correspondant au code de la devise. Si le code de la devise est le dollar us, j'ai besoin d'afficher $, si le code de la devise EUR j'ai besoin de spectacle €. Comment puis-je faire cela? S'il vous plaît suggérer une idée ou un exemple de code pour faire cela. S'il vous plaît aider moi. Merci à l'avance.
Vous devez vous connecter pour publier un commentaire.
Ce code fonctionne charme de dans mon projet. Je vais partager avec vous tous.
Grâce.
[locale objectForKey:NSLocaleCurrencySymbol]
, la sortie des impressionsCurrency Symbol : ¤
.NSLocale *locale = [NSLocale currentLocale]
. LecurrencyCode
n'est pas égal à l'identificateur de paramètres régionaux.Ce code est ce que vous recherchez, mais pas très efficace en raison de boucle pour les locales. Néanmoins, il fonctionne correctement pour tous les codes des monnaies, et pas seulement pour eur ou en usd. Espérons que cela vous aidera.
Utiliser de cette façon:
NSNumberFormatter
décide de ne pas placer le symbole de la devise première de la sortie, vous allez obtenir un résultat incorrect. Si le symbole de la devise arrive à occuper plus qu'une seule UTF-16 codepoint, il va avoir coupé et invalideSwift 4 version
Trouver les paramètres régionaux par le code de la devise:
Mise en forme de la monnaie
Edit:
Pourquoi
.lazy
? Sans elle, la boucle devrait être de plus de tous les identificateurs de paramètres régionaux et de retour de la première qui correspond. C'est sur 700ish identifiants, et si le premier est celui que vous voulez, alors vous avez perdu la création de 699 paramètres régionaux 🙂 Avec.lazy
de là, il s'arrête automatiquement à la première correspondance. Dans mon cas, il réduit le nombre de fois la boucle à partir de 710 en bas à 22 lors de la conversion "GBP". Ce n'est pas important si vous êtes seul à le faire une fois, mais si vous faites cela un certain nombre de fois (c'est à dire un tableau de symboles) ensuite c'est un moyen facile d'obtenir un peu plus d'efficacité.NSLocale
sera heureux de vous dire le symbole de la devise utilisée par un particulier de paramètres régionaux:Il va aussi vous dire que le code de la devise:
De sorte que tous vous avez à faire maintenant est de regarder les paramètres régionaux qui correspond à un code donné. Il n'y a pas de méthode intégrée (que je connais) pour ce faire, directement, de sorte que la boucle à travers les lieux et choisissez le produit qui vous correspond. @Umka de réponse a un bon exemple de cela dans le
-findLocaleByCurrencyCode:
méthode.Vous pourriez optimiser le processus par la construction de votre propre table de recherche, plutôt que d'une itération à travers toutes les régions chaque fois. Vous pouvez avoir besoin pour gérer la possibilité de dupliquer les codes des monnaies, ce qui nécessiterait une heuristique pour décider qui est le plus susceptible de paramètres régionaux.
De construction sur le code de @Mike Abdullah et @Umka, voici quelques fonctions en Swift.
Swift
c'est pour NOUS la monnaie de style
C'est pour les indiens