我想扫描文本文件中的每一行,除了第一行。
我通常会这样做:
while line = file.gets do
...
...etc
end
但line = file.gets
从第一行开始读取每一行。
如何从第二行开始阅读?
答案 0 :(得分:1)
为什么不简单地拨打file.gets
一次并丢弃结果:
file.gets
while line = file.gets
# code here
end
答案 1 :(得分:1)
我会以简单的方式做到这一点:
IO.readlines('filename').drop(1).each do |line| # drop the first array element
# do any proc here
end
答案 2 :(得分:0)
你真的想避免阅读第一行或避免使用它。如果您正在阅读该行但是您想避免处理它,那么您可以使用lineno在处理过程中忽略该行,如下所示
f = File.new "/tmp/xx"
while line = f.gets do
puts line unless f.lineno == 1
end