逗號分隔值(Comma-Separated Values,CSV,有時也稱為字符分隔值,因為分隔字符也可以不是逗號),其文件以純文本形式存儲表格數據(數字和文本)。純文本意味着該文件是一個字符序列,不含必須像二進制數字那樣被解讀的數據。CSV文件由任意數目的記錄組成,記錄間以某種換行符分隔;每條記錄由字段組成,字段間的分隔符是其它字符或字符串,最常見的是逗號或制表符。通常,所有記錄都有完全相同的字段序列。通常都是純文本文件。建議使用WORDPAD或是記事本來開啟,再則先另存新檔后用EXCEL開啟,也是方法之一。
CSV文件格式的通用標准並不存在,但是在RFC 4180中有基礎性的描述。使用的字符編碼同樣沒有被指定,但是bitASCII是最基本的通用編碼。
規則:
1 開頭是不留空,以行為單位。
2 可含或不含列名,含列名則居文件第一行。
3 一行數據不跨行,無空行。
4 以半角逗號(即,)作分隔符,列為空也要表達其存在。
5列內容如存在半角引號(即"),替換成半角雙引號("")轉義,即用半角引號(即"")將該字段值包含起來。
6文件讀寫時引號,逗號操作規則互逆。
7內碼格式不限,可為 ASCII、Unicode 或者其他。
8不支持數字(這里理解為字符)
9不支持特殊字符
舉例說明
|
年
|
制造商
|
型號
|
說明
|
價值
|
|
1997
|
Ford
|
E350
|
ac, abs, moon
|
3000.00
|
|
1999
|
Chevy
|
Venture "Extended Edition"
|
4900.00
|
|
|
1999
|
Chevy
|
Venture "Extended Edition, Very Large"
|
5000.00
|
|
|
1996
|
Jeep
|
Grand Cherokee
|
MUST SELL!
air, moon roof, loaded |
4799.00
|
上面表格內容若以CSV格式表示就會像下列:
年,制造商,型號,說明,價值
1997,Ford,E350,"ac, abs, moon",3000.00
1999,Chevy,"Venture ""Extended Edition""","",4900.00
1999,Chevy,"Venture ""Extended Edition, Very Large""","",5000.00
1996,Jeep,Grand Cherokee,"MUST SELL!
1999,Chevy,"Venture ""Extended Edition""","",4900.00
1999,Chevy,"Venture ""Extended Edition, Very Large""","",5000.00
1996,Jeep,Grand Cherokee,"MUST SELL!
air, moon roof, loaded",4799.00
以上這個CSV的例子說明了:
-
包含逗號, 雙引號, 或是換行符的字段必須放在引號內.
-
字段內部的引號必須在其前面增加一個引號來實現文字引號的轉碼.
-
分隔符逗號前后的空格 可能不會 被修剪掉. 這是RFC 4180的要求.
-
元素中的換行符將被保留下來.
Excel 文件可直接另存為 .csv格式文件,查看轉換效果 -- 2019.11.26
