ITコンサルの日常

ITコンサル会社に勤務する普通のITエンジニアの日常です。

続・getsメソッドが認識する改行文字を変更する方法は? (できねえ)

たのしいRuby第二版のp346

  • 0[octal]: 行末文字の指定

とかあったので、多分これだと思い、早速サンプルを書いてみることに。

cr.txt@cygwinで表示

$ od -cx cr.txt
0000000   A   A   A  \r   B   B   B  \r   C   C   C  \r
        4141 0d41 4242 0d42 4343 0d43
0000014

$

gets_text_2.rb

p $/
filename = ARGV[0]
file = open(filename)
while text = file.gets do
  print text
end
file.close

が、結果は惨敗でした。

>ruby -015 gets_text_2.rb cr.txt
"\r"
CCC
>

なんで??
まあ、ver9以前のMacOSにしか影響ないので、どうでもいいっちゃどうでもいいのだが。