pメソッド使用時UTF-8なのに文字化けする
Last-modified: Thu, 07 Jul 2016 08:02:04 JST (3217d)
Top > pメソッド使用時UTF-8なのに文字化けする
- Ruby2系なのに、pメソッドやppメソッドでUTF-8な日本語を出力したときに、
# -*- encoding: utf-8 -*- require "pp" pp "ああああ漢字" p "あああ".encoding "\u3042\u3042\u3042\u3042\u6F22\u5B57" #<Encoding:UTF-8>
のように文字化けすることがあります。
しかし、文字列のエンコードはUTF-8で問題ないようです。
これは、pメソッドが主にデバック目的のため、文字コードをそのまま出力するのが原因のようです。
解決法は、pメソッドではなく、putsメソッドを使いましょう。
# -*- encoding: utf-8 -*- require "pp" puts "ああああ漢字" ああああ漢字
Counter: 885,
today: 1,
yesterday: 0
このページの参照回数は、885です。