1. 程式人生 > >CSV標準格式

CSV標準格式

1. CSV的全稱是叫Comma Separated Value
2. CSV的MIME型別是text/csv
3 CSV檔案中的每一行資料,作為一行記錄,也就是一個條目(99%的情況,排除有些換行資料,下面會提到)
4. CSV檔案的每一行資料後面跟著(回車+換行符)即CRLF,但有些資料中也提到了單個CR或者LF均可,但標準rfc文件中用到的是CR+LF
5. 檔案第一行可以是標題行,這個用到的不多
6. 每行資料中,每個欄位之間均必須用半形逗號comma進行分隔,這也是為什麼叫Comma Separated的來由,如果有標題行,那麼標題之間也使用逗號分隔
7 每行的最後一個欄位後應該只有CRLF,不應該再有逗號
8. 最後一行後面可以不加CRLF
9. 在逗號分隔開的每個欄位中,前面的空白和後面的空白會被忽略,但單個欄位內部的空白會被保留,例如,  aaa,   bbb  bbb   ,ccc  我們看到有三個欄位,其中第二個欄位前面,中間,後面均有空白,但CSV解析器應該只保留中間的空白,即bbb  bbb,類似於java中的trim方法
10. 如果某個欄位中間有回車換行之類的字元,可以用雙引號來引用,例如: 

"aaa","b CRLF   
 bb","ccc" CRLF   
 zzz,yyy,xxx  

    那麼可以判斷出第二個欄位之間內部存在一個回車換行符,由於使用雙引號分隔,他們b 和 bb 被連結成一個欄位
11. 欄位本身推薦使用雙引號來引用,但MS的excel預設是不會對欄位加" "的
12. 轉義字元逗號(,),當欄位中存在逗號是,是必須要將這個欄位用""引用起來的
13. 轉移字元雙引號("),當欄位中存在雙引號時,必須連續用兩個雙引號來進行轉義