如何简洁地将文本附加到文件中

iro*_*and 14 ruby

而不是写作

File.open("foo.txt", "w"){|f| f.write("foo")}
Run Code Online (Sandbox Code Playgroud)

我们可以写出来

File.write("foo.txt", "foo")
Run Code Online (Sandbox Code Playgroud)

有没有更简单的方法来写这个?

File.open("foo.txt", "a"){|f| f.write("foo")}
Run Code Online (Sandbox Code Playgroud)

Ger*_*y C 26

是的。它的记录很少,但您可以使用:

File.write('foo.txt', 'some text', mode: 'a+')
Run Code Online (Sandbox Code Playgroud)


kar*_*rns 16

这已经得到了很好的回答:

你可以在Ruby中一行创建/写/附加一个字符串

File.write('some-file.txt', 'here is some text', File.size('some-file.txt'), mode: 'a')
Run Code Online (Sandbox Code Playgroud)

  • 第三个参数可以省略,默认为文件末尾。 (2认同)

Rus*_*nov 10

f = File.open('foo.txt', 'a')
f.write('foo')
f.close
Run Code Online (Sandbox Code Playgroud)