ruby-xurrency をリリースしました
以前「API Xurrency : 各国通貨の為替レートを教えてくれます」に書いたように、xurrency.com さんは各国通貨の為替レートを取得できるとってもすごいサイトです。この API xurrency をRubyでとっても簡単に使えるツール及びライブラリの ruby-xurrency をリリースしました。
- RubyForge: http://rubyforge.org/projects/xurrency/
- GitHub: http://github.com/keita/ruby-xurrency/wikis
インストール
いつもの通りにgemでよろしくお願いします。
% sudo gem install xurrency
xurrency コマンドの使い方
まずは xurrency コマンドの使い方を紹介致します。最初に通貨コードを一覧しておきましょう。
% xurrency -l ars, aud, bgn, brl, cad, chf, cny, cop, czk, dkk, eek, eur, gbp, hkd, hrk, huf, inr, isk, jpy, krw, lkr, ltl, lvl, mxn, myr, nok, nzd, php, pln, ron, rub, sek, sgd, skk, thb, try, twd, usd, vef, zar
日本円のコードは"jpy",人民元のコードは"cny"です。では 10,000 円は人民元にするといくらになるでしょうか?こんな時は次のようにします。
% xurrency 10000 jpy cny 697.0 (1 jpy = 0.0697 cny) % date 2008年 4月 15日 火曜日 19:56:42 JST
というわけで、10000円は697元だそうです。では次に100元って日本円にするといくらでしょうか?やはり同様に次のようにします。
% xurrency 100 cny jpy 1434.72 (1 cny = 14.3472 jpy) % date 2008年 4月 15日 火曜日 19:58:44 JST
そんなわけで1434円になることが分かりました。これはコマンドラインから簡単に操作できるので、とっても便利に使えると思います。是非使ってみて下さい。
ライブラリ
では次にライブラリとしての使い方を簡単にまとめておきます。
# 準備 xu = Xurrency.new # 変換 xu.value(10000, "jpy", "cny") # 10000円 → 697.0元 xu.value(100, "cny", "jpy") # 100元 → 1434.72円 # レートを取得 xu.values("jpy") # => {"cny" => 0.0697, ... }
という感じです。もう少しだけ機能はありますが、基本的にはこれだけで十分ではないかと思います。これらのメソッドは値をキャッシュしてありますので、最初に呼び出した時にはネットワークに接続して時間がかかりますが、二回目以降は高速に変換できると思います。詳しくはAPI文書をご覧下さい。ただし、値をキャッシュしてあるので、最新の情報が欲しい時に困るかと思います。そういう場合は値の更新用を関数を用意してあります。
xu.update(:values, "jpy")
例えば以上のようにすると、xu.values("jpy")の結果が更新されます。また、一切キャッシュして欲しくない時には Xurrency::Request にある同名のメソッドを使用して下さい。
Xurrency::Request.values("jpy")
この場合には結果をキャッシュしないので、毎回 xurrency.com にリクエストを投げます。負荷の問題もあろうかと思いますので、気を付けて使って下さい。これを使えばウェブサービスに各国通貨の為替レートを表示する、なんてことが、とっても簡単に出来ると思います。どなたか是非挑戦してみて下さい。