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

标签 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());
            }

    }

当用户输入 50000 这样的值时,editText 中的答案是 50.000。但, 我不想点。我想用逗号来表示 50,000。我该怎么做 ?

最佳答案

参见javadoc

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

或者更危险,因为全局性

Locale.setDefaultLocale(Locale.US);

关于java - 在Java中,在DecimalFormat替换方法中将点转换为逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24675916/

相关文章:

java - Android 平板电脑和相机之间的 USB 批量传输

linux - 如何仅当包含它的行不包含使用 Bash 的特定字符串时才替换文件中的字符串?

android - 有没有办法向用户显示输入文本的格式,例如 ___/__/__?

android - 编辑框在android中没有获得焦点

java - Android如何检查空的edittext

java - 是否可以使用普通 Java 使用 okHttp 客户端执行 OAuth2 请求

java - jsp java内联函数调用退出javascript

替换 R 数据框中变量中的特定字符

javascript - 使用变量创建正则表达式模式以替换点

将 Java jar 文件放入存储库(CVS、SVN..)