从Android中的十进制数中删除分组分隔符

Posted

技术标签:

【中文标题】从Android中的十进制数中删除分组分隔符【英文标题】:Remove grouping separator from a decimal number in Android 【发布时间】:2015-01-05 20:42:40 【问题描述】:

我有一个使用 DecimalFormat 格式化的十进制数。当它被格式化时,我使用 decimal.setGroupingUsed(true) 因为我需要。

现在我需要做相反的方法,即我有一个整数小数,像这样 3,200.95 分组,我想获得 3200.95(删除分组符号)。

我不想将“,”替换为“”,因为分组符号取决于国家/地区。有些国家是“。”和其他一些“,”所以我尝试通过将分组设置为 false 来使用 DecimalFormat:

decimal.setGroupingUsed(false)

但后来我不知道如何进行。有什么想法吗?

【问题讨论】:

那么当您调用DecimalFormat.parse() 时会发生什么?失败了吗? 您可以将,.first 字符替换为空字符串,假设它们是唯一允许的两个分隔符 @ianhanniballake 它将 3,200.95 解析为 3 为什么将数字存储为字符串?只需将其存储为数字,然后将其转换为字符串即可显示。 【参考方案1】:

您实际上希望 setGroupingUsed 为真,因为您希望这些符号出现在您正在解析的字符串中。您将使用 parse 方法将该字符串转换为数字。

【讨论】:

我的错误是我将 setGroupingUsed 设置为 false.... 将其设置为 true 然后将字符串解析为数字就像一个魅力!谢谢!

以上是关于从Android中的十进制数中删除分组分隔符的主要内容,如果未能解决你的问题,请参考以下文章

PHP - 查找十进制数中的零个数

c语言中如何提取二进制数中的某一位?

统计二进制数中的1的个数(0277)

十进制字符串与千位分隔符?

十进制逗号删除并将逗号添加到javascript中的大数字

统计二进制数中的1的个数