我不知道为什么。我在SQLite中的数据显示为96665488558.5,但当我使用Cursor时,它显示为9.66655e+10
这是我的测试代码
Cursor data = myDb.get_exp(email);
while (data.moveToNext()) {
Log.e("Amount","" + data.getString(5)); //9.66655e+10 it displays
}这是我用来显示以逗号分隔的数据的代码。
credentials.doubleToStringwithDecimal(Float.parseFloat(data.getString(5)));
这是功能结构
public static String doubleToStringwithDecimal(double d) {
DecimalFormat formatter = (DecimalFormat) NumberFormat.getInstance(Locale.getDefault());
formatter.applyPattern("#,###.##");
return formatter.format(d);
}现在,代码不正确地显示数据,因为如果使用e+10值
发布于 2018-12-04 15:30:44
您可以尝试以下方法:
Log.v("Amount", "" + new BigDecimal(data.getString(5)).toPlainString());编辑:
Cursor data = myDb.get_exp(email);
while (data.moveToNext()) {
Log.e("Amount", new DecimalFormat("#,###.##").format(data.getDouble(5)));
}https://stackoverflow.com/questions/53616071
复制相似问题