« 2007年5月23日 | メイン | 2007年5月25日 » |
このブログを書く四元輝博とジョシュア清水が経営する旅行代理店スカイメリカ
ジョシュア清水 自らが操縦する、日本語でのガイドと会話を楽しみながらハワイ島を巡るセスナの旅
このブログを書く四元輝博と共にスカイメリカを経営するハワイ島在住の日本人パイロット、ジョシュア清水のブログ
スカイメリカの共同経営者、シリコンバレー在住の四元輝博によるIT情報・ベンチャー起業に関するブログ
四元輝博によるに 「組み込みJava による M2Mソリューション」に関する調査レポート・サイト
: 日付別 アーカイブ :
2007年5月24日
require 'idn' include IDN idnAscii = Idna.toASCII("日本語ドメイン名example.jp") puts 'Idna.toASCII: ' + idnAscii idnUnicode = Idna.toUnicode('xn--example-6q4fyliikhk162btq3b2zd4y2o.jp') puts 'Idna.toUnicode: ' + idnUnicodeこのスクリプトを見てすぐに わかるとおり、 Idna.toASCII というメッソドが UTF-8 のユニコードのドメイン名から ASCII文字列に変換するメソッド。 そして、Idna.toUnicode というメッソドが その逆変換である。
% ruby -rubygems ./IDNtest.rb Idna.toASCII: xn--example-6q4fyliikhk162btq3b2zd4y2o.jp Idna.toUnicode: 日本語ドメイン名example.jpとなる。
require 'idn' include IDN punyAscii = Punycode.encode("日本語ドメイン名example") puts 'Punycode.encode: ' + punyAscii punyUnicode = Punycode.decode("example-6q4fyliikhk162btq3b2zd4y2o") puts 'Punycode.decode: ' + punyUnicodeこれも 見たとおり、Punycode.encode と Punycode.decode を呼ぶだけ。 その実行結果は
Punycode.encode: example-6q4fyliikhk162btq3b2zd4y2o Punycode.decode: 日本語ドメイン名exampleとなる。
カテゴリー: DNS・URL・URI , Ruby 22:23 | コメント (0) | トラックバック (0)