Rubyで読み込み中のファイルの行数を取得する

タグ: ruby / 公開: 2014-09-12

Rubyではファイル等の読み込み中にIO#linenoを参照することで、そのIOオブジェクトでgetsを呼び出した回数を取得できる。 これを利用すれば、getsでファイルを読み進んでいる時に、現在までに読み込んだ行数を取得したり、簡単にファイルの行数を数えることができる。

open('foo.txt'){|f|
  while f.gets
    puts f.lineno
  end
}

上記コードの出力は以下のようになる。

1
2
3
この記事をSNSでシェアする
タイトルとURLをコピーする
または投稿画面を開く
Author
Icon
ぺけみさお / xmisao
プログラマ。
Subscription
Recent articles
Related to ruby