如何获取十进制符号

时间:2014-07-17 13:07:39

标签: java operating-system decimal system-properties

在Java中,如何获取系统中设置的小数符号? 我不想依赖Locale,因为无论语言环境如何都可以更改。

没有在System.getProperties()中看到过某些东西,但也许我错过了一些东西 感谢

2 个答案:

答案 0 :(得分:0)

以下是使用DecimalFormatSymbols类的示例。你说你不想依赖Locale ......好吧,你可以在对象的初始化中指定你的Locale。但你不必这样做。

DecimalFormatSymbols sym = new DecimalFormatSymbols(); //Can specify 'Locale' here

char charDecimal = sym.getDecimalSeparator();

String strDecimal = String.valueOf(charDecimal); //Value becomes '.'

希望有所帮助! :d

答案 1 :(得分:0)

您可以使用系统属性获取默认语言环境,然后获取小数符号。 因为你不想依赖Locale.getDefault()

String language = System.getProperty("user.language");
String country = System.getProperty("user.country"); 

NumberFormat nf = NumberFormat.getNumberInstance(new Locale(language, country));
DecimalFormat df = (DecimalFormat)nf;
DecimalFormatSymbols symbols=format.getDecimalFormatSymbols();
char sep=symbols.getDecimalSeparator();