2016-02-02 83 views
-1

我試圖導入該行:使用這些線路無法解析簡單的CSV文件?

"1","K&M Möbel AG: Erstes Quartal: Plus 9%","Die K&M Möbel AG, Kirchlengern steigerte ihren Umsatz im ersten Quartal um über 9% auf 68,1 Mio. Euro (1999: 62,3 Mio. Euro). Als Grund für die überdurchschnittlich gute Entwicklung nannte der Vorstandsvorsitzende Volker Meurer das positive Geschäft mit den fünf wichtigsten Einkaufsverbänden, das um ein Drittel anstieg. Die Platzierung neuer Möbelserien legte im gleichen Zeitraum ? ebenso wie der Auftragseingang ? um 13% zu. 


csv_file = File.open(File.join(Rails.root, 'db', 'seeds', 'news.csv')) 
csv = CSV.parse(csv_file.read) 

扔我這個錯誤:

CSV::MalformedCSVError: Missing or stray quote in line 1 

我通過這個去行100次,找不到問題。有任何想法嗎?

---更新---

我使用這個查詢做

SELECT 
    * 
FROM 
    news 
INTO OUTFILE '/Users/pbartels/Sites/moebel_fertigung/db/seeds/news.csv' 
CHARACTER SET utf8 
FIELDS ENCLOSED BY '"' 
TERMINATED BY ',' 
ESCAPED BY '\"' 
LINES TERMINATED BY '\\n' 

回答

1

你需要告訴它你使用(因爲你不分離使用逗號)。

> CSV.parse(s, {:col_sep => ';'}) 
=> [["1", "K&M Möbel AG: Erstes Quartal: Plus 9%", "Die K&M Möbel AG, Kirchlengern steigerte ihren Umsatz im ersten Quartal um über 9% auf 68,1 Mio. Euro (1999: 62,3 Mio. Euro). Als Grund für die überdurchschnittlich gute Entwicklung nannte der Vorstandsvorsitzende Volker Meurer das positive Geschäft mit den fünf wichtigsten Einkaufsverbänden, das um ein Drittel anstieg. Die Platzierung neuer Möbelserien legte im gleichen Zeitraum ? ebenso wie der Auftragseingang ? um 13% zu. "]] 
+0

謝謝,編輯我的問題,沒有太大的改變。 – Cojones

0

您需要刪除引號,然後檢查。它可以爲你工作,例如

1; K & M M ö bel AG:Erstes Quartal:Plus 9%; Die K & M M ö bel AG,Kirchlengern steigerte ihren Umsatz im ersten Quartal um ü ber 9%auf 68,1 Mio.歐元(1999年:62.3億歐元)。阿爾斯Grund的˚Fü [R死ü berdurchschnittlich固特發展協會nannte德Vorstandsvorsitzende沃爾克Meurer DAS積極Gesch ä英尺MIT書房˚Fü NF wichtigsten Einkaufsverb ä nden,DAS嗯EIN Drittel anstieg。 Die Platzierung neuer M ö belserien legte im gleichen Zeitraum? ebenso wie der Auftragseingang?這個13%zu。

+0

爲什麼刪除?如何將它現在怎麼獨立? – Cojones

0

有一個「在該行的末尾缺少