せかいや

いまいるここを、おもしろく http://sekai-in-the-box.appspot.com/

【Ruby】【文字コード】Ruby1.9で日本語(UTF-8)を表示する方法 windows

文字コードの問題ってなんでこんなに苦しいんだ・・・・

解決策

環境変数に以下を追加
 RUBYOPT=-EUTF-8

おかしいな、と思ったら

文字コード確認方法

 

# 外部エンコーディング
p Encoding.default_external
p $stdout.external_encoding
# 内部エンコーディング
p Encoding.default_internal
p $stdout.internal_encoding
p "ここ".encoding
p "ここ"

 
■実行結果(RUBYOPT設定後)

#<Encoding:UTF-8>
nil
nil
nil
#<Encoding:UTF-8>
"ここ"

 
 
■実行結果(RUBYOPT設定前)

#<Encoding:Windows-31J>
nil
nil
nil
#<Encoding:UTF-8>
#default_externalと一致しない旨のエラー。

ごめんエラー再現させる気力がない。

 
この記事で解決しました。
WindowsでEncoding.default_externalをUTF-8にするには - すがブロ

ありがとう15章のお兄さん。。