android - 将 String 转换为 Double 时无效的 double

标签 android double number-formatting separator

我得到一个 NumberFormatException : invalid double "111,000,000"in this line of code :

double SalePotential = Double.valueOf(EtPotential.getText().toString());

一开始我使用 Numberformat 来格式化我的 double 值以分隔数字并将其插入到 EditText 但是当我尝试检索 EditText 的值时它抛出异常:

NumberFormat f = NumberFormat.getInstance();
EtPotential.setText(String.valueOf(f.format(PTData.SalePotential)));

我也试过 DecimalFormat 或 Double.parseDouble 但没有成功。任何帮助,将不胜感激! :

DecimalFormat f = new DecimalFormat("###.###", DecimalFormatSymbols.getInstance());
double SalePotential = Double.parseDouble(EtPotential.getText().toString());

最佳答案

解析前去掉“,”

double SalePotential = Double.parseDouble(EtPotential.getText().toString().replace(",", ""));

更新:正确实现

double salePotential = 0; // Variable name should start with small letter 
try {
    salePotential = Double.parseDouble(EtPotential.getText().toString().replace(",", ""));
} catch (NumberFormatException e) {
    // EditText EtPotential does not contain a valid double
}

编码愉快 :)

关于android - 将 String 转换为 Double 时无效的 double,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16434386/

相关文章:

android - 实现社交登录和应用内登录

c - 打印具有两位小数的 double 值(来自整数表达式)

c - 如何在 while 循环中找到最大值和最小值 - c

swift - 无法将类型 '[String]?' 的值转换为预期的参数类型 'String' Swift

php - 如何在数据库中正确插入浮点变量

swift - 如何在 swift xcode 中向小于 1.00 的答案开头添加零?

android createBitmap NullPointerException异常

java - Android viewpager下RelativeLayout

android - 用户选择返回时的事件?

c# - .Net 中的 Excel 样式条件数字格式