2009-09-22 8 views

答えて

2

独自のマッピングを設定する必要があります。これは、Javaが、いくつかによってサポートされていない国

4

このようなマッピングが再びLocale依存性が...私はあなたの最善の策は、ISO 4217に長く、ハードな外観を取ることだと思うことと通貨コードからMapを作成したいです通貨名へ

2

標準APIにはありません。 Currencyクラスの背後にあるデータは、パッケージプライベートクラスjava.util.CurrencyDataからロードされます。そこにはテキストの説明は存在しません。 JDKにソースコードがインストールされていれば、それを見ることができます。

3

のためにそこにあるとして、何のXMLまたはテキストファイルでないように思わとしてページをこすりする必要がありますしかし GoogleやStackOverflowの質問がISO site

を指すようになりますライブラリはこれを行うことができます。

マイナンバーワンの選択肢は

http://icu-project.org/apiref/icu4j/com/ibm/icu/util/Currency.html#getName%28java.util.Locale,%20int,%20boolean[]%29

この呼び出しは、複数のロケールであなたの通貨の名前を取得することができ、ICUになります。 ICUはJREで利用できない他のすべてのi18n機能もサポートしています。しかし、それはかなり大きいです。

別のオプションはJPOS、

http://gl.jpos.org/

あなたは財務データで何かをした場合、これはデファクトスタンダードです。そのライセンスを見てください。私たちの弁護士は何らかの理由でそれを気に入らなかった。

3

クラスjava.util.Currencyは、java 1.7以降で実装しています。

Currency curr = Currency.getInstance("AZM"); 
    System.out.println(curr.getCurrencyCode()); // AZM 
    System.out.println(curr.getNumericCode()); // 31 
    System.out.println(curr.getDisplayName()); // Azerbaijani Manat (1993-2006) 

残念ながら、このクラスは依然として使いやすさとはかけ離れています。それは、などの簡単な情報を返します

http://openexchangerates.org/api/currencies.json

:numericCodeからコンストラクタが欠落し、いくつかのdisplayNamesのcontainingsないイベントのDisplayName、...

1

openexchangerates.orgは、この情報を機械可読JSON形式でオンライン住んで提供します次のようになります。

{ 
    "AED": "United Arab Emirates Dirham", 
    "AFN": "Afghan Afghani", 

    ... 

    "ZMK": "Zambian Kwacha", 
    "ZWL": "Zimbabwean Dollar" 
} 

ほとんど無料ですが、いくつかの条件です。 Here is the online documentation.

+0

同じことがあるだけでなく、翻訳もありますか?私はまたロシア語が必要です – fnc12

関連する問題