I’m hoping someone out there can help me troubleshoot a strange problem
that I’m experiencing with CSV files.
I download a file, in CSV format, from a website and when I try to parse
with CSV and Faster CSV I get the following error.
/usr/local/lib/ruby/1.8/csv.rb:639:in get_row': CSV::IllegalFormatError (CSV::IllegalFormatError) from /usr/local/lib/ruby/1.8/csv.rb:556:ineach’
from /usr/local/lib/ruby/1.8/csv.rb:531:in parse' from /usr/local/lib/ruby/1.8/csv.rb:311:inopen_reader’
from /usr/local/lib/ruby/1.8/csv.rb:85:in `open’
But if I open the CSV file in TextMate, select all of the contents,
paste and save that content into a new CSV file, created with TextMate,
the CSV parser can process it just fine.
Anyone have any idea about what might be causing this?
But if I open the CSV file in TextMate, select all of the contents,
paste and save that content into a new CSV file, created with
TextMate,
the CSV parser can process it just fine.
My guess is end of line format for the next file. Maybe you’re reading
the whole file in as a single line and the EOL char is confusing CSV.
TextMate could be reformatting it when you save it out.
But if I open the CSV file in TextMate, select all of the contents,
paste and save that content into a new CSV file, created with TextMate,
the CSV parser can process it just fine.
seems like a charset issue. maybe you should compare the two files
(original and after copying with textmate) regarding character encoding
and line endings. maybe even using a diff tool. this should help you
figure out the exact problem, if you really need to know it.
Greetings,
Niklas
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.