我正在尝试为android中的editext设置关键侦听器。因为对于欧洲国家/地区,我们应该将“,”作为十进制分隔符,所以我使用DecimalFormatSymbols.getInstance()。getDecimalSeparator()此方法来获取基于区域设置的分隔符。但是,当我尝试法语时,它返回的是“ 44”而不是“”,我该如何解决该问题。仅对于欧洲国家,我需要“,”而不是“。”作为十进制分隔符。下面是我尝试获取小数点分隔符并将其设置为editext keylistener的代码。

char separator = DecimalFormatSymbols.getInstance().getDecimalSeparator();
mWeightEditText.setKeyListener(DigitsKeyListener.getInstance("0123456789" + separator));

最佳答案

如果您在调试器中看到此信息

java - DecimalFormatSymbols.getInstance()。getDecimalSeparator()返回输出为','44而不是','-LMLPHP

(这里有一个char c = ',';

这只是调试器显示变量值的方式。变量的值实际上是',',即ASCII 44。

关于java - DecimalFormatSymbols.getInstance()。getDecimalSeparator()返回输出为','44而不是',',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59244460/

10-12 04:47