简单的问题:读取文件,将其反转并写入Ruby中的另一个文件

时间:2010-08-10 00:40:45

标签: ruby file-io

我有:

 o = File.new("ouput.txt", "rw+")
 File.new("my_file.txt").lines.reverse_each { |line|
       ?????  line 
 }
 o.close

我不知道用什么方法来写入文件输出o

4 个答案:

答案 0 :(得分:6)

puts了解数组,因此您可以将其简化为:

File.open("f2.txt","w") {|o| o.puts File.readlines("f1.txt").reverse}

答案 1 :(得分:0)

我知道这很简单,我不明白为什么没有记录here

o = File.new("ouput.txt", "w+")
File.new("my_file.txt").lines.reverse_each { |line|
    o.puts line 
}
o.close

答案 2 :(得分:0)

你想要做更像......的事情。

new_text = File.readlines('my_file').reverse.join
File.open('my_file', 'w+') { |file| file.write(new_text) }

查看this documentation以确定w+的含义。

答案 3 :(得分:0)

对于大文件,请避免使用readlines,因为它会非常慢/效率低。考虑使用像Elif这样的宝石来做这类事情。