なんというか、Javaだと文字コードを変換する時、
new InputStreamReader(InputStream is, “文字コード”);
のようにオブジェクトを作成するが、
Rubyの場合はどうするのか?
そこで調べたところ、Kconvという標準クラスで文字コード変換できるみたいだ。
さぁ、試しにYahooを文字コード変換してみよう。
require ‘net/http’
require ‘kconv’
http = Net::HTTP.start(“www.yahoo.co.jp”, 80)
response = http.get(“/index.html”)
#EUC-JPに変換
puts Kconv.toeuc(response.body)
さぁ、実行!
・・・ん?あれ?文字化けしてる。
なんで?Yahooは、EUC-JPだよね?
そこで、Kconv.tosjisで表示してみたら、表示できた!
ということは?他の文字コードも?
試しにUTF-8のサイトもKconv.tosjisで表示してみたら、日本語で表示された!
どういうことだ?
サイトの文字コードは、どうでもよくてOSの文字コードを指定するってこと?
それ以外に考えられないしなぁ・・・。
まぁ、ひとまず良しとしよう。
さすが流行のフレームワークだ、と言いたくなるくらい楽勝に
