Чтобы получить код и символ местной валюты в Android с помощью Kotlin, вы можете использовать следующие методы:
Метод 1: использование Currency.getInstance()
import java.util.Currency
fun getLocalCurrencyCode(): String {
val currency = Currency.getInstance(Locale.getDefault())
return currency.currencyCode
}
fun getLocalCurrencySymbol(): String {
val currency = Currency.getInstance(Locale.getDefault())
return currency.symbol
}
Метод 2: использование Currency.getAvailableCurrency()
import java.util.Currency
fun getLocalCurrencyCode(): String {
val currencySet = Currency.getAvailableCurrencies()
val defaultLocale = Locale.getDefault()
for (currency in currencySet) {
if (currency.displayName.contains(defaultLocale.displayCountry)) {
return currency.currencyCode
}
}
return ""
}
fun getLocalCurrencySymbol(): String {
val currencySet = Currency.getAvailableCurrencies()
val defaultLocale = Locale.getDefault()
for (currency in currencySet) {
if (currency.displayName.contains(defaultLocale.displayCountry)) {
return currency.symbol
}
}
return ""
}
Метод 3: использование Currency.getInstance(Locale)
import java.util.Currency
import java.util.Locale
fun getLocalCurrencyCode(): String {
val currency = Currency.getInstance(Locale.getDefault())
return currency.currencyCode
}
fun getLocalCurrencySymbol(): String {
val currency = Currency.getInstance(Locale.getDefault())
val symbol = currency.symbol
// Removing leading and trailing white spaces from the symbol
return symbol.trim()
}
Эти методы извлекают код и символ местной валюты на основе языкового стандарта устройства по умолчанию. Вы можете выбрать любой из этих методов в зависимости от ваших требований.