[英]How can I find out the currency sub-unit (aka minor unit) symbol in Java?
Currency.getSymbol將給我一個主要符號(例如美元的“$”),但我想得到次要單位(例如英鎊的“p”或美元的美分符號),而不寫我自己的查找表。
是否有標准,即內置方式來做到這一點?
我想建議這種情況使用自custom currency format
自custom currency format
。 使用java.text.*
包的DecimalFormat
或NumberFormat
。 有很多例子。
例
public class CurrencyFormatExample {
public void currencyFormat(Locale currentLocale) {
Double currency = new Double(9843.21);
NumberFormat currencyFormatter;
String currencyOut;
currencyFormatter = NumberFormat.getCurrencyInstance(currentLocale);
currencyOut = currencyFormatter.format(currency);
System.out.println(currencyOut + " " + currentLocale.toString());
}
public static void main(String args[]) {
Locale[] locales = new Locale[]{new Locale("fr", "FR"),
new Locale("de", "DE"), new Locale("ca", "CA"),
new Locale("rs", "RS"),new Locale("en", "IN")
};
CurrencyFormatExample[] formate = new CurrencyFormatExample[locales.length];
for (int i = 0; i < locales.length; i++) {
formate[i].currencyFormat(locales[i]);
}
}
}
出局:
9Â 843,21 â?¬ fr_FR
9.843,21 â?¬ de_DE
CAD 9.843,21 ca_CA
RSD 9,843.21 rs_RS
Rs.9,843.21 en_IN
參考這里 :
次要貨幣的更新
Locale locale = Locale.UK;
Currency curr = Currency.getInstance(locale);
// get and print the symbol of the currency
String symbol = curr.getSymbol(locale);
System.out.println("Symbol is = " + symbol);
輸出:
Symbol is = £
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.