J'ai la ligne suivante dans un fichier CSV qui me donne des problèmes lors de l'analyse syntaxique:Comment bien analyser cette ligne avec FasterCSV?
312,'997639',' 2','John, Doe. "J.D." ',' ','2000 ',' ','Street ','City ','NY','99999','','2010-02-17 19:12:04','2010-02-17 19:12:04';
Je suis analyse avec les paramètres suivants:
FasterCSV.foreach(file, {:headers => true, :quote_char => '"', :col_sep => "','"}) do |row|
Cependant, le vent souffle sur les lignes comme celui ci-dessus en raison de la "JD" à l'intérieur d'une colonne de ligne. Comment puis-je correctement analyser cette ligne avec FasterCSV?
Merci!
Cela provoque une exception FasterCSV :: MalformedCSVError (FasterCSV :: MalformedCSVError) levée. – mwilliams
Comment votre fichier CSV est-il généré? Es-tu certain que c'est bien formé? : quote_char spécifie le caractère qui entoure les champs, qui semble être une simple guillemets dans votre exemple, et: col_sep spécifie le caractère entre les champs, ce qui semble être une virgule dans votre exemple. C'est sur cette information que j'ai basé ma réponse. –
Le problème est qu'il n'est pas bien formé et j'essayais de plier FasterCSV pour qu'il l'analyse de toute façon. Le vidage provenait d'un client et j'ai depuis envoyé la bonne requête SQL qui produira le bon CSV. En attendant, j'essaie toujours de le pirater. – mwilliams