我在cvs文件中有空行:
CSV.table(filepath).count { |row| row.to_h.values.all?(&:blank?) }
#=> 6
Run Code Online (Sandbox Code Playgroud)
我试图使用CSV :: Table#delete_if删除它们:
CSV.table(filepath).delete_if { |row| row.to_h.values.all?(&:blank?) }
#=> #<CSV::Table mode:col_or_row row_count:6>
Run Code Online (Sandbox Code Playgroud)
在这里,我希望我的csv不再包含空行,但是:
CSV.table(filepath).count { |row| row.to_h.values.all?(&:blank?) }
#=> 6
Run Code Online (Sandbox Code Playgroud)
我在这里错过了一些观点吗?我检查了是否CSV::Table有类似的东西delete_if!,但它没有,所以假设我应该工作.
delete_if各州的文件:
此方法返回链接表.
所以你把表拿回来了,我猜你应该再把它保存到某些CSV.它不会修改原始CSV文件.
您需要再次存储它: File.write('/path/new_name.csv', csv.to_s)