標準CSV格式

以下內容均來自 rfc4180

  1. CSV的MIME類型是text/csv
  2. CSV文件中的每一行數據,作爲一行記錄,也就是一個條目(99%的情況,排除有些換行數據,下面會提到)
  3. CSV文件的每一行數據後面跟着(回車+換行符)即CRLF,但有些資料中也提到了單個CR或者LF均可,但標準rfc文檔中用到的是CR+LF
  4. 文件第一行可以是標題行,這個用到的不多
  5. 每行數據中,每個字段之間均必須用半角逗號comma進行分隔,這也是爲什麼叫Comma Separated的來由,如果有標題行,那麼標題之間也使用逗號分隔
  6. 每行的最後一個字段後應該只有CRLF,不應該再有逗號
  7. 最後一行後面可以不加CRLF
  8. 在逗號分隔開的每個字段中,前面的空白和後面的空白會被忽略,但單個字段內部的空白會被保留,例如,  aaa,   bbb  bbb   ,ccc  我們看到有三個字段,其中第二個字段前面,中間,後面均有空白,但CSV解析器應該只保留中間的空白,即bbb  bbb,類似於java中的trim方法
  9. 如果某個字段中建有回車執行換行之類的字符,可以用雙引號來引用
  10. 字段本身推薦使用雙引號來引用,但MS的excel默認是不會對字段加" "的
  11. 轉義字符(,)當字段中存在逗號,必須要將這個逗號用“”引用起來。
  12. 轉義字符逗號(,),當字段中存在逗號是,是必須要將這個字段用""引用起來的
  13. 轉移字符雙引號("),當字段中存在雙引號時,必須連續用兩個雙引號來進行轉義


擴展ASCII碼

絕大多數計算機的一個字節是8位,取值範圍是0~255,而ASCII碼並沒有規定編號爲128~255的字符,爲了能表示更多字符,各廠商制定了很多種ASCII碼的擴展規範。注意,雖然通常把這些規範稱爲擴展ASCII碼(Extended ASCII),但其實它們並不屬於ASCII碼標準。例如以下這種擴展ASCII碼由IBM制定,在字符終端下被廣泛採用,其中包含了很多表格邊線字符用來畫界面。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章