半角カタカナを全角カタカナに変換する方法は比較的簡単に見つかるのに,逆は見つからなかったので調査してみました.
ヒントとして使った情報はここ
http://codezine.jp/article/detail/3519
このサイトによると,nkfコマンドに全角->半角オプションが追加され,rubyにもライブラリが同梱されているとのこと.
以下の用に記述することで変換が出来ました.
require 'nkf'
zen = "カタカナ"
puts NKF.nkf('-w -Z4', zen)
# => カタカナ
-w
はUTF-8で出力するオプション.
-Z4
は全角カタカナを半角カタカナに変換するオプションです.
同時に文字コードの変換する場合などはhttp://doc.ruby-lang.org/ja/2.0.0/class/NKF.html を参考にオプションを追加するといいでしょう.
半角カタカナとかいつ使うんだと思いますが,昔ながらのシステムでは未だに使う必要があるようなのでまとめてみました.
しかし,文字コード周りは非常に面倒ですね….