Währung im indischen Zahlenformat anzeigen
In Indien werden Währungswerte häufig in einem eindeutigen Zahlenformat dargestellt, bei dem nach jeweils zwei ein Trennzeichen eingefügt wird Ziffern, mit Ausnahme des letzten Satzes, der durch Tausender getrennt ist. Um dieses Format in Java zu erreichen, bietet die Standardklasse DecimalFormat keine Unterstützung für Gruppen mit variabler Breite.
Leider ist das traditionelle Java SE DecimalFormat in dieser Hinsicht unzureichend:
„Wenn Sie a Bei einem Muster mit mehreren Gruppierungszeichen wird das Intervall zwischen dem letzten und dem Ende der Ganzzahl verwendet. Also "#,##,###,####" == "###### ,####" == "##,####,####"."
Um diese Einschränkung zu überwinden, sollten Sie die Verwendung von ICU4J (International Components for Unicode for Java) in Betracht ziehen. Seine NumberFormat-Klasse bietet die gewünschte Funktion:
<code class="java">Format format = com.ibm.icu.text.NumberFormat.getCurrencyInstance(new Locale("en", "in")); System.out.println(format.format(new BigDecimal("100000000")));</code>
Dieser Code gibt den Wert im gewünschten indischen Nummerierungsformat aus:
Rs 10,00,00,000.00
Beachten Sie, dass die Datei com.ibm.icu.text. Die NumberFormat-Klasse erweitert die Klasse java.text.Format, die die Methode format(Object) bereitstellt.
Alternativ können Sie, wenn Sie mit Android arbeiten, die Android-Version von java.text.DecimalFormat nutzen Es unterstützt Gruppen mit variabler Breite durch seine interne Implementierung unter Verwendung der ICU.
Das obige ist der detaillierte Inhalt vonWie formatiere ich die Währung im indischen Nummerierungssystem mit Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!