2013-08-30 60 views
2

我有一個包含字段,如該CSV文件:CSV解析,報價爲字符

「」#33CCFF「

我猜想,應該是文本值:

」# 33CCFF

但是Excel和開放式辦公,計算顯示:

#33CCFF」

我錯過了什麼csv規則?

+0

這看起來像一個十六進制顏色,請參見:http://jsfiddle.net/DrPaulBrewer/xmEfX – Paul

+0

的2.7節[RFC 4180](http://tools.ietf.org/html/rfc4180 #section-2)表示要嵌入雙引號符號使用雙引號兩次。但是,它似乎沒有這樣做... – Paul

+0

是的,它是一個十六進制顏色。該文件來自一個腳本,我想那個編碼它的人得到了一個錯字。它必須意味着在這些領域只說「#33CCFF」。 – smdufb

回答

1

當Excel解析該值時,它不會首先刪除外部引號,然後繼續閱讀它們之間的內容。即使這樣,它會怎麼處理剩餘的「在#前面?它不能顯示出你期望的結果」#33CCFF,因爲它看起來像這樣,雙引號應該已經通過複製而逃脫了。 (這可能是您錯過的'csv'規則。)

Excel從左到右讀取值,將「」解釋爲單個「,然後讀取,並在最後找到意外的雙引號, 'panics'並簡單地顯示它

創建csv文件的人員/應用程序犯了錯誤,在添加封裝時沒有在值中隱藏封裝字符,現在您的數據格式不正確,因爲使用封裝時,值應該是「」「#33CCFF」,不使用封裝時,應該是「#33CCFF」。

This might clarify some things