Get local currency in swift
You can get the currency symbol and code from (NS)Locale
with
Swift 1 and 2
let locale = NSLocale.currentLocale()let currencySymbol = locale.objectForKey(NSLocaleCurrencySymbol)!let currencyCode = locale.objectForKey(NSLocaleCurrencyCode)!
Swift 3
let locale = Locale.current()let currencySymbol = locale.object(forKey: .currencySymbol)!let currencyCode = locale.object(forKey: .currencyCode)!
Swift 3.1+
let locale = Locale.currentlet currencySymbol = locale.currencySymbol!let currencyCode = locale.currencyCode!
This correlates with the user region format settings and works in both iOS
and macOS
for swift3
//User region setting returnlet locale = Locale.current //NSLocale.current//Returns true if the locale uses the metric system (Note: Only three countries do not use the metric system: the US, Liberia and Myanmar.)let isMetric = locale.usesMetricSystem//Returns the currency code of the locale. For example, for “zh-Hant-HK”, returns “HKD”. let currencyCode = locale.currencyCode//Returns the currency symbol of the locale. For example, for “zh-Hant-HK”, returns “HK$”.let currencySymbol = locale.currencySymbol