我有一个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);
先谢谢!
答案 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);
是非法的,因为您使用相同的变量名称。