Ruby 初心者スレッド Part 41
レス数が900を超えています。1000を超えると表示できなくなるよ。
0932デフォルトの名無しさん
2011/04/16(土) 07:23:17.35NetBeans なんかのほうが通常ではない動作をしている
Ruby 1.8 において、本来、使用日本語に関する情報が何もなければ、
非アスキー文字の含まれる文字列に対する String#inspect、
つまりそれを引数にとった関数的メソッド p はバイナリ表記をする
(Ruby 1.9 では日本語として区切って表示するようになってしまった、個人的には改悪)
p はデバッグ表記用メソッドなので、
人間に読めるように表示したいなら人間表示専用の puts や print 使え
なお、 ruby の起動時に -Ku や -Ks などで日本語モードが指定されてると、
String#inspect は日本語体系がそれであるとみなしてバイナリを区切って表示する
「何もしてない」のに Ruby 1.8 の p で日本語が表示できる場合、
どこかの誰かがあなたに無断でそれを指定している
(IDE内コンソールである場合は、勝手に変換している可能性すらある)
$KCODE="u" や $KCODE="s" をスクリプト内で誰かが指定していても同様
レス数が900を超えています。1000を超えると表示できなくなるよ。