如何在Ruby中读取整个文件?

在Ruby中是否有一个内置函数来读取整个文件而不使用任何循环? 到目前为止,我只能遇到以块(行或字符)读取的方法。

IO.read("filename") 

要么

 File.read("filename") 
 File.readlines("filename") 

这也是一个很好的方法来读取文件中的所有内容,并在回车符上拆分。 返回是一个数组,每个元素有一行。

请忽略build议,其中指出“你永远不应该sl((这是一个恼人的词)一个文件”。 有时候这是一个非常有用的,明智的事情。

假设您正在重复读取文件:即使考虑到文件将caching文件,读取文件到数组中的好机会是逐行读取文件的明智优化。