为什么File.each
有效但File.readline
没有?
File.open('store-sample','r') do |f|
f.readline("\n\n\n\n") do |l|
binding.pry
end
end
代码并没有中断,但以下代码有效:
File.open('store-sample','r').each("\n\n\n\n") do |l|
binding.pry
end
我不知道这两种方法的内部实现,但这种奇怪的行为确实让我发疯。
答案 0 :(得分:3)
readline没有阻止;它返回一个值。
line = f.readline('\n\n\n\n')
# do something with line
答案 1 :(得分:0)
为什么不使用File.foreach
?它被设计为一次返回一行。