Creating an empty file in Ruby: "touch" equivalent?

What is the best way to create an empty file in Ruby?

Something similar to the Unix command, touch:

touch file.txt

Solution 1:

FileUtils.touch looks like what it does, and mirrors* the touch command:

require 'fileutils'
FileUtils.touch('file.txt')

* Unlike touch(1) you can't update mtime or atime alone. It's also missing a few other nice options.

Solution 2:

If you are worried about file handles:

File.open("foo.txt", "w") {}

From the docs:

If the optional code block is given, it will be passed the opened file as an argument, and the File object will automatically be closed when the block terminates.