Java は、特定のロケールに応じて主要な記号を使用して通貨をフォーマットする優れた方法を提供します。たとえば、指定された通貨が米ドルの場合、米国および英国のロケールに対してそれぞれ$0.35
またはを達成できます。USD0.35
それは本当にいいです。
それにもかかわらず、場合によっては、通貨の金額を別の形式でフォーマットする必要があります。つまり、マイナーな通貨記号を使用した、よりユーザーフレンドリーなスタイルです。たとえば、35¢
または35c
上記の例の代わりに。ウィキペディアには次のようにも書かれています。
1 セントから 99 セントまでのセント金額は、1 桁または 2 桁の数字とそれに続く適切な略語 (2¢、5¢、75¢、99¢) で表すことができます。
ただし、JDK を使用してこのスタイルで金額をフォーマットする方法が見つかりません。私はすでに で遊んでみましたDecimalFormatSymbols
が、これは主要な通貨記号を構成することしかできないためDecimalFormat
、元の形式を使用しているため、¢35
うまくいきません。また、順序を修正するためのカスタム フォーマット文字列は、ロケール/言語/国に依存しない場合があります (スペースの間? 接頭辞または接尾辞の表記?)。Joda MoneyとそのMoneyFormatterにも、この機能がないようです。
小通貨記号を使用して金額をフォーマットする良い方法はありますか? 前もって感謝します。
PS 「メジャー」と「マイナー」という言葉がここで適切かどうかはわかりません。