【发布时间】:2015-08-23 23:27:12
【问题描述】:
有多种方法可以从文件中读取行。以下是三个:
# 1
File.open("temp.txt", "r") do |f|
f.each_line { |l| puts l }
end
# 2
File.open("temp.txt", "r").each_line { |l| puts l }.close
# 3
File.readlines("temp.txt").each { |l| puts l }
- 这三种方法是否正确处理文件(即之后成功关闭文件)?
- 是否存在一种方法优于其他方法的情况(即给定文件相对较大)?如果是这样,最佳做法是什么?
【问题讨论】:
-
您可以通过阅读文档和stackoverflow.com/questions/25189262/why-is-slurping-a-file-bad来自己回答这个问题。