CSV转换器
纯文本形式的表格:每个电子表格、数据库和脚本都能读的最低公分母。
25个工具
转换为CSV
CSV转其他格式
其他CSV操作
CSV为什么经久不衰
它没有版本,没有厂商,也没有二进制结构。CSV就是一行行用分隔符隔开的文本,这就是全部规范。过去四十年写出来的任何工具都能读它,所以数据离开每个正经系统时都是CSV,进入别的系统时也是。它不携带值以外的任何东西:没有格式、没有公式、没有单元格类型、没有多个工作表。把电子表格导出为CSV,数字留下了,工作簿没了。
让CSV出错的三件事
分隔符、编码和引号。欧洲很多地方用分号写CSV,因为逗号在那里是小数点;这样保存的文件在别处打开,会变成长长的一列。编码问题更糟:存成Windows-1251或Latin-1的文件,在UTF-8的世界里名字会显示成乱码,而Excel要看到字节顺序标记,才承认UTF-8文件是UTF-8。任何包含逗号、引号或换行的值都必须正确加引号,否则这一行会悄悄断开。这里的工具会明确处理这三点,而不是猜一次、然后悄无声息地出错。
CSV、JSON和Excel
数据有扁平表格表达不了的结构时,转成JSON:嵌套对象、数组、可选字段。要给人而不是程序看时,转成Excel,因为XLSX保留类型、列宽和多个工作表。下一步是脚本、数据库导入或你控制不了的系统时,就留在CSV:它是最不需要解释的格式。
在Excel里打开CSV,列和日期不乱
Excel拆分CSV用的是Windows区域设置里的列表分隔符,而不是看文件本身,所以逗号分隔的导出文件在欧洲的电脑上会变成长长的一列,分号分隔的文件在美国也一样。一劳永逸的办法是不再直接打开CSV:“CSV转Excel”从文件本身读取分隔符,把前导零和长数字保留为文本,并写出分好列的真正.xlsx文件。反过来,“Excel转CSV”可以选择分隔符、编码(UTF-8,带或不带Excel需要的字节顺序标记)和一种固定的日期格式,让同一个文件在每台打开它的电脑上看起来都一样。
常见问题
CSV在Excel里为什么只显示一列?
文件用的分隔符和你的Windows区域设置不一样:电脑设成分号,文件却用逗号,或者反过来。用“CSV转Excel”转换,它会从文件里识别分隔符;或者用Excel的导入向导,而不是双击打开。
CSV怎么保留前导零?
别让电子表格去猜类型。00123这样的编码和长标识符必须保持为文本;这里的“CSV转Excel”和“CSV转JSON”会把它们保留为文本,只转换真正是数字的值。
CSV和XLSX有什么区别?
CSV是纯文本,只有一张表,没有格式、公式和类型;XLSX是完整的工作簿,有工作表、列宽、公式和真正的日期。给程序和导入用CSV,给人看用XLSX。