Rubyでファイルの行を読み込む方法 質問する

Rubyでファイルの行を読み込む方法 質問する

次のコードを使用してファイルから行を読み取ろうとしました。しかし、ファイルを読み取ると内容はすべて 1 行になります。

line_num=0
File.open('xxx.txt').each do |line|
  print "#{line_num += 1} #{line}"
end

しかし、このファイルは各行を個別に印刷します。


のような stdin を使用する必要がありますがruby my_prog.rb < file.txt、そのファイルで使用される行末文字が何であるかを推測することはできません。どうすれば対処できますか?

ベストアンサー1

Ruby にはこれを実現するメソッドがあります:

File.readlines('foo', chomp: true).each do |line|
    puts(line)
end

http://ruby-doc.org/core-1.9.3/IO.html#メソッド-c-readlines

おすすめ記事