将文本插入现有文件

时间:2011-08-16 22:23:55

标签: ruby-on-rails ruby

我有一个txt文件。我可以在其中放置一些文本而不会覆盖它吗?因为当我使用例如f.puts“aaaaaaaaaaaaaa”Ruby时会覆盖我的txt文件。 感谢

3 个答案:

答案 0 :(得分:18)

您需要以附加模式打开它

File.open("file.txt", "a+"){|f| f << "aaaaaaaaaaaaaaaaaaa" }

查看您之前的问题

File opening mode in Ruby

答案 1 :(得分:4)

在文件上使用open时,必须设置文件的模式。

此处有更多详细信息:http://www.ruby-doc.org/core/classes/IO.html#M000889

答案 2 :(得分:4)

如果您问如何文本插入现有文件的中间,如下所示,则不能:

Original file first half, Original File second half

变为:

Original file first half, Inserted text, Original File second half

您需要创建一个新文件,将原始文件的前半部分复制到其中,然后编写新文本,然后复制原始文件的其余部分。