【发布时间】:2019-11-09 13:28:58
【问题描述】:
我试图读取大的 csv 文件
但 csv 状况不佳
所以其中一些是抛线CSV::MalformedCSVError
我只想忽略错误行并转到下一行
我尝试添加开始救援,但似乎我的代码不起作用,它在错误处停止
我当前的代码
require 'csv'
begin
CSV.foreach(filename, :headers => true) do |row|
Moulding.create!(row.to_hash)
end
rescue
next
end
【问题讨论】:
-
在不知道文件长什么样的情况下无法回答您的问题。我建议您尝试使用仅包含几行的文件来重现错误,然后将这些行连同获得的错误消息以及引发异常的行的标识一起发布。
-
如果您需要查看文件,那么我正在尝试做的事情是不可能的吗?那么正确的方法是修改/修复 csv 文件?我的错误是这样的
CSV::MalformedCSVError (Unquoted fields do not allow new line <"\r"> in line 10250.)
标签: ruby-on-rails ruby csv