Search code examples
rubystringfileio

What's a reasonable way to read an entire text file as a single string?


I am sure this is an easy one; I just couldn't find the answer immediately from Google.

I know I could do this (right?):

text = ""
File.open(path).each_line do |line|
    text += line
end

# Do something with text

But that seems a bit excessive, doesn't it? Or is that the way one would do it in Ruby?


Solution

  • What about IO.read()?

    Edit: IO.read(), as an added bonus, closes the file for you.