Rubyではファイル等の読み込み中にIO#lineno
を参照することで、そのIO
オブジェクトでgets
を呼び出した回数を取得できる。 これを利用すれば、gets
でファイルを読み進んでいる時に、現在までに読み込んだ行数を取得したり、簡単にファイルの行数を数えることができる。
open('foo.txt'){|f|
while f.gets
puts f.lineno
end
}
上記コードの出力は以下のようになる。
1
2
3
Rubyではファイル等の読み込み中にIO#lineno
を参照することで、そのIO
オブジェクトでgets
を呼び出した回数を取得できる。 これを利用すれば、gets
でファイルを読み進んでいる時に、現在までに読み込んだ行数を取得したり、簡単にファイルの行数を数えることができる。
open('foo.txt'){|f|
while f.gets
puts f.lineno
end
}
上記コードの出力は以下のようになる。
1
2
3