いくつかある文字コードライブラリ
NKF以外にも、KconvやIconv、そしてUconvなんてものまである。
何でこんなにたくさんあるの?
どれを使えばいいのかよく分からない。
と思ってぐぐってみたら、
るびまのこんな記事が出てきた。
- >るびま
ふーん。なるほどね。
文字コード絡みのことで分からなくなったらまたここを見ることにしよう。
とりあえずは、Kconvが一番分かりやすくて使いやすそうな感じ。
Kconvの特徴を以下に挙げてみる。
- Ruby1.8.2以降のKconvはUTF-8にも対応
- requireするとStringクラスにKconvのメソッドが組み込まれる
- 内部でNKFを使っている(つまりKconvはNKFのラッパー)
- NKFとは違い複雑な処理には向いていない
- MIMEのデコードと、半角カナから全角カナへの変換を自動で行う
最後の、MIMEのデコードと、半角カナから全角カナへの変換を自動で行う
ってのがちょっと気になるけど、
普通に文字コードを変換する分にはあまり気にしないでよさそうかな?
以下のようにStringのメソッド感覚で直感的に使えるのはとてもよかですね。
puts "ほげほげ".tosjis