从本地文件或 URL 打开 IO 流

我知道其他语言中有一些库可以获取包含本地文件路径或 URL 的字符串,并将其作为可读的 IO 流打开。

Is there an easy way to do this in ruby?

93215 次浏览

Open-uri 是标准 Ruby 库的一部分,它将重新定义 open的行为,以便您可以打开一个 URL 和一个本地文件。它返回一个 File对象,因此您应该能够调用诸如 readreadlines之类的方法。

require 'open-uri'
file_contents = open('local-file.txt') { |f| f.read }
web_contents  = open('http://www.stackoverflow.com') {|f| f.read }