Recommended way to format numbers in a locale aware way?
Lets a开发者_开发百科ssume we have one million.
In English it should be formatted as 1,000,000
in German it should be 1.000.000
.
Using NumberFormat class:
For English:
NumberFormat nf_us = NumberFormat.getInstance(Locale.US);
String number_us = nf_us.format(1000000);
For German:
NumberFormat nf_ge = NumberFormat.getInstance(Locale.GERMAN);
String number_ge = nf_ge.format(1000000);
You can use NumberFormat.
Android documentation is quite clear on it.
You can achieve this with using the NumberFormat class, this also allows you to parse Strings into a local aware number.
NumberFormat formatter = NumberFormat.getInstance(Locale.GERMAN);
String localeFormattedNumber = formatter.format(1000000);
精彩评论