在Java中,在DecimalFormat替换方法中将点转换为逗号

时间:2014-07-10 11:56:33

标签: java replace android-edittext decimalformat

public void afterTextChanged(Editable s) {
        // TODO Auto-generated method stub
        if( editText != null)
        {
            if(editText.getText().length() > 0){
                    String TL = null;
                    DecimalFormat formatter = new DecimalFormat("#,###");
                    String ss = "";
                    try{
                        ss = editText.getText().toString();
                        ss = ss.replace(".", "");
                        ss = ss.replace(",", "");
                        Long number = Long.parseLong(ss);
                        ss = formatter.format(number);
                    }catch(Exception e){
                        ss = e.toString();
                    }
                    changeText(editText,ss);
                }

            editText.setSelection(editText.length());
            }

    }

当用户在editText中输入类似50000的值为50.000时。但, 我不想点。我想逗号像50,000。我该怎么做 ?

1 个答案:

答案 0 :(得分:2)

请参阅javadoc

formatter.setDecimalSeparator('.');
formatter.setGroupingSeparator(',');

或者更危险,全球

Locale.setDefaultLocale(Locale.US);