浏览 2442 次
锁定老帖子 主题:CSV文件的一些注意点
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-08-20
wiki的定义 CSV is a delimited data format that has fields/columns separated by the comma character and records/rows terminated by newlines. 广义的csv是以任意一个字符分隔的平面文件。 没有严格的标准,RFC 4180试图规范化CSV。 每条记录结束于行终止符。 每个字段用分隔符分隔(一般是逗号)。 常见的一些约束: DOS-style lines that end with (CRLF) characters 每一个记录包含相同数目的字段,并且字段顺序相同。 任何字段可以用双引号引住。 字段中如果包含(行结束符)\r\n,双引号,逗号,该字段必须用双引号包住。 字段中的双引号用连续2个双引号表示。同时,该字段必须用双引号包住。 CSV文件不需要特定的字符集,编码,byte order,行结束符。 字段中的数据按照字符解释,不按字节解释。 同一记录相邻字段必须用分隔符隔开。 看例子: 说明: 第1行 左边:比较简单,不解释。 右边:字段可以用双引号包住。 第2行 左边:b","b被解释为2个字段,前一个字段为b",后一个字段以双引号开始,所以会跨行寻找该字段的值,直到配对的双引号或文件结束。 右边:"b","b"被解释为2个被双引号包住的字段。 第3行 左边:"b"",""b"被解释为一个字段被双引号包住,中间的连续双引号被转义为双引号。 右边:"b,b"被解释为一个字段被双引号包住,中间的分隔符,原样输出。 第4行 左边:b","b被解释为2个字段,前一个字段为b",后一个字段以双引号开始,所以会跨行寻找该字段的值,直到配对的双引号或文件结束。 右边:b"","b被解释为2个字段,前一个字段为b"",因为该字段没有以双引号开始,因此,连续的双引号没有转义。 第5行 左边:b""b被解释为一个字段。 右边:验证双引号开始的字段的跨行查找。 第6行 左边:"""的情况,字段以双引号开始,接下来的2个双引号转义,接下来查找该字段的其他值。 右边:单引号没有特殊功能,空和""含义相同。 第6行 左边:验证单引号没有特殊功能。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2012-08-22
没考虑数字?
|
|
返回顶楼 | |
发表时间:2012-08-22
数字是显示的问题,和字段如何划分没有关系。
|
|
返回顶楼 | |