【发布时间】:2012-08-04 02:32:09
【问题描述】:
我正在尝试解析远程 CSV 文件的前 5 行。但是,当我这样做时,它会引发Errno::ENOENT 异常,并说:
No such file or directory - [file contents]([文件内容] 是 CSV 内容的转储
这是我的代码:
def preview
@csv = []
open('http://example.com/spreadsheet.csv') do |file|
CSV.foreach(file.read, :headers => true) do |row|
n += 1
@csv << row
if n == 5
return @csv
end
end
end
end
上面的代码是根据我看到其他人在 Stack Overflow 上使用的代码构建的,但我无法让它工作。
如果我从文件中删除 read 方法,它会引发 TypeError 异常,说:
can't convert StringIO into String
我有什么遗漏吗?
【问题讨论】:
-
也许我没有意识到这一点,但据我所知,FasterCSV 无法即时下载文档并对其进行解析 - 请先将其保存到您的硬盘中
标签: ruby parsing csv import fastercsv