1

我在 ruby​​ 1.9 中使用 csv 库,并尝试按照此处显示的表的示例进行操作:

链接到 github 上的 faster_csv

我的代码如下:

<% require 'csv' %>
<% table = CSV.parse("public/assets/file.csv", :headers => true, :header_converters =>   :symbol) %>

 <%= table %>

但是上面会返回一个空白屏幕,我希望它会在其中显示文件。

此外,当我尝试查看 table[0].fields 时,我得到了错误

undefined method `fields' for nil:NilClass

但是,以下在读取 csv 文件时有效:

<% b = CSV.read("public/assets/khq.csv") %>
<%= b %> 

我在表格示例中做错了什么吗?

4

1 回答 1

2

对于 1.9.2,尝试

CSV.table("public/assets/file.csv")

或者

CSV.read("public/assets/file.csv", :headers=>true, :conveters=>:numeric, :header_converters=>:symbol)

仅供参考,CSV.parse 用于字符串,而不是文件。您可以在此处查看文档http://ruby-doc.org/stdlib-1.9.2/libdoc/csv/rdoc/CSV.html#method-c-parse

于 2012-04-17T18:33:48.193 回答