Android字符串格式

时间:2012-05-07 00:28:44

标签: android string format

我有一个textview,我正在从一个SimpleCursorAdapter获得的值中设置文本。我的SQLite数据库中的字段是一个REAL数字。这是我的代码:

        // Create the idno textview with background image
        TextView idno = (TextView) view.findViewById(R.id.idno);
        idno.setText(cursor.getString(3));

我的问题是文本显示小数。值是1081,但我得到1081.0000。如何将字符串转换为不显示小数?我查看了格式化程序,但我无法正确理解语法。

        TextView idno = (TextView) view.findViewById(R.id.idno);
        String idno = cursor.getString(3);
        idno.format("@f4.0");
        idno.setText(idno);

先谢谢!

2 个答案:

答案 0 :(得分:2)

您可以使用String.format

String idno = String.format("%1$.0f", cursor.getDouble(3));

你也可以DecimalFormat

DecimalFormat df = new DecimalFormat("#");
String idno = df.format(cursor.getDouble(3));

答案 1 :(得分:0)

如果您获得带小数点的String,则可以执行以下操作:

idno.setText(cursor.getString(3).split("\\.")[0]);
//          Split where there is a point--^   ^
//                                            |
//          Get the first in the array--------+

请注意:

TextView idno = (TextView) view.findViewById(R.id.idno);
String idno = cursor.getString(3);

是非法的,因为您使用相同的变量名称。