Ho un file TSV senza caratteri di preventivo. Ogni volta che si verifica un \t
nei dati, è sempre necessario separare le colonne e mai una parte del valore di una colonna. Ogni volta che si verifica uno "
, è sempre una parte del valore di una colonna e non deve mai includere valori di colonna.Come posso leggere CSV senza quote_char in ruby?
Vorrei leggere questo CSV in Ruby, ma mi dà
/Users/.rvm/rubies/ruby-1.9.3-p545/lib/ruby/1.9.1/csv.rb:1925:in `block (2 levels) in shift': Illegal quoting in line 9506. (CSV::MalformedCSVError)
il mio codice è:
CSV.foreach(input_file, { :col_sep => "\t", :headers => true}) do |row|
puts row
end
Un modo per aggirare questo problema?
Consiglio vivamente la gemma fastercsv da James Edward Grey II. Rende la vita più semplice. –
possibile duplicato di [Importazione dell'errore di quotatura CSV mi sta facendo impazzire] (http://stackoverflow.com/questions/8073920/importing-csv-quoting-error-is-driving-me-nuts) –
@ 6ftDan: la libreria standard csv in Ruby 1.9.3 * è * fastercsv AFAIK. –