CSV文件,全程Comma-separated values,就是逗号分隔的数据文件。常用于数据集成的数据交换部分标准部分。
最近看到一个项目组在讨论接口文件CSV的规范,真是替他们着急。讨论点:
- 文件是否有标题行(header row),一方坚持要有,接口另一方坚持不能有。
- 行分割符,一方坚持使用Unix style的0x0A字符,另一方坚持使用Windows/Dos风格的0x0D0x0A(或者说\r\n),回车换行两个字符。
- 列分隔符,一方坚持使用一个不可见字符0x05,说防止和内容字符串冲突,另一方坚持使用0x1B(ESC键)。
- 字符串中如果有换行怎么处理,也没有统一的意见。
不会Google真可怕,这个东西很简单,先看是否有标准,如果有严格按照标准走。如果没有标准,看是否有常见做法(或者叫事实标准)。Google一下关键字“CSV”,第一条就是维基百科(wikipedia)的解释。
下面一种常见配置:
如果使用了以上推荐标准,可以减少很多时间来讨论方案。