Android货币浮动

时间:2013-12-21 22:28:06

标签: android currency

您好,我有以float格式存储在SQLite数据库中的数据。 我使用NumberFormat.getCurrencyInstance()在TextView中查看它们的数据; 但是现在当我传递这些值来改变它们时应该转换回浮点数。 如何防止例外?

extras.putString("sale", tv_sale.getText().toString());

1 个答案:

答案 0 :(得分:0)

您可以将货币存储为Java中的BigDecimal,然后存储为String。

您可以使用toPlainString()方法。

BigDecimal b = new BigDecimal();
String s = b.toPlainString();

然后,当您从数据库中提取它时,您可以创建一个新的BigDecimal。

BigDecimal c = new BigDecimal(String s)

信不信由你,SQLite 3.0将所有数据类型都存储为字符串,即使你说它应该是一个整数。 See here并向下滚动到“Manifest Typing and BLOB Support”部分。它讨论了如何让你将字符串存储在其他类型的列中。