我的代码是:
def write_to_file(line, my_file)
File.open(my_file, 'a') do |file|
p '-----loop number:' + line.id.to_s
file.puts "#{line.id}"
end
end
如果我用这种方法循环三次,我可以看到:
-----loop number:1
-----loop number:2
-----loop number:3
但它只能将最后一个id写入my_file。我甚至试过了:
file << "#{line.id}"
# or
file.write "#{line.id}\n"
结果是一样的。
答案 0 :(得分:3)
试试这个
def write_to_file(line, my_file)
File.open(my_file, 'a') do |file|
p '-----loop number:' + line.to_s
file.puts "#{line}"
end
end
[1,2,3,4].each do |line|
write_to_file(line, my_file)
end