在Java中,如何获取系统中设置的小数符号? 我不想依赖Locale,因为无论语言环境如何都可以更改。
没有在System.getProperties()中看到过某些东西,但也许我错过了一些东西 感谢
答案 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();