首页  >  文章  >  Java  >  如何使用 Java 格式化印度编号系统中的货币?

如何使用 Java 格式化印度编号系统中的货币?

Patricia Arquette
Patricia Arquette原创
2024-10-25 08:44:02900浏览

How to Format Currency in Indian Numbering System with Java?

以印度编号格式显示货币

在印度,货币值通常以独特的编号格式表示,其中每两个之后放置分隔符数字,最后一组除外,以千位分隔。为了在 Java 中实现这种格式,标准 DecimalFormat 类不提供对可变宽度组的支持。

不幸的是,传统的 Java SE DecimalFormat 在这方面存在不足:

“如果您提供具有多个分组字符的模式,最后一个和整数末尾之间的间隔是使用的“#,##,###,####”==“######”。 ,####" == "##,####,####"."

要克服此限制,请考虑使用 ICU4J(Java Unicode 国际组件)。它的 NumberFormat 类提供了所需的功能:

<code class="java">Format format = com.ibm.icu.text.NumberFormat.getCurrencyInstance(new Locale("en", "in"));
System.out.println(format.format(new BigDecimal("100000000")));</code>

此代码将以所需的印度编号格式输出值:

Rs 10,00,00,000.00

请注意 com.ibm.icu.text. NumberFormat 类扩展了 java.text.Format 类,该类提供了 format(Object) 方法。

或者,如果您使用 Android,则可以利用 Android 版本的 java.text.DecimalFormat,如下所示它通过内部使用 ICU 的实现来支持可变宽度组。

以上是如何使用 Java 格式化印度编号系统中的货币?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn