原文链接:http://blog.csdn.net/zlzlei/article/details/9236403

1. CSV的全称是叫Comma Separated Value 
2. CSV的MIME类型是text/csv 
3 CSV文件中的每一行数据,作为一行记录,也就是一个条目(99%的情况,排除有些换行数据,下面会提到) 
4. CSV文件的每一行数据后面跟着(回车+换行符)即CRLF,但有些资料中也提到了单个CR或者LF均可,但标准rfc文档中用到的是CR+LF 
5. 文件第一行可以是标题行,这个用到的不多 
6. 每行数据中,每个字段之间均必须用半角逗号comma进行分隔,这也是为什么叫Comma Separated的来由,如果有标题行,那么标题之间也使用逗号分隔 
7 每行的最后一个字段后应该只有CRLF,不应该再有逗号 
8. 最后一行后面可以不加CRLF 
9. 在逗号分隔开的每个字段中,前面的空白和后面的空白会被忽略,但单个字段内部的空白会被保留,例如,  aaa,   bbb  bbb   ,ccc  我们看到有三个字段,其中第二个字段前面,中间,后面均有空白,但CSV解析器应该只保留中间的空白,即bbb  bbb,类似于Java中的trim方法
10. 如果某个字段中间有回车换行之类的字符,可以用双引号来引用,例如:

  1. "aaa","b CRLF
  2. bb","ccc" CRLF
  3. zzz,yyy,xxx

那么可以判断出第二个字段之间内部存在一个回车换行符,由于使用双引号分隔,他们b 和 bb 被链接成一个字段 
11. 字段本身推荐使用双引号来引用,但MS的excel默认是不会对字段加" "的 
12. 转义字符逗号(,),当字段中存在逗号是,是必须要将这个字段用""引用起来的 
13. 转移字符双引号("),当字段中存在双引号时,必须连续用两个双引号来进行转义

cvs的规范以及介绍(转)的更多相关文章

  1. JavaScript var关键字、变量的状态、异常处理、命名规范等介绍

    本篇主要介绍var关键字.变量的undefined和null状态.异常处理.命名规范. 目录 1. var 关键字:介绍var关键字的使用. 2. 变量的状态:介绍变量的未定义.已定义未赋值.已定义已 ...

  2. C#6.0语言规范(一) 介绍

    C#(发音为“See Sharp”)是一种简单,现代,面向对象,类型安全的编程语言.C#源于C语言系列,对C,C ++和Java程序员来说很熟悉.EC#International将EC#标准化为ECM ...

  3. Tomcat 目录结构以及相关规范的介绍

    目录 安装tomcat tomcat目录结构 tomcat/bin目录 tomcat/conf目录 tomcat/logs目录 JavaEE对项目结构的规范 war包 安装Tomcat 参考:安装Ja ...

  4. onvif规范 中文介绍

    什么是ONVIF ? ONVIF规范描述了网络视频的模型.接口.数据类型以及数据交互的模式.并复用了一些现有的标准,如WS系列标准等. ONVIF规范的目标是实现一个网络视频框架协议,使不同厂商所生产 ...

  5. PHP PSR 代码规范基本介绍

    PSR 是 PHP Standard Recommendation 的简写,即PHP推荐标准. 目前通过的规范有 PSR-0(Autoloading Standard).PSR-1(Basic Cod ...

  6. [原创] C#编程规范工具介绍

    1.目标 代码编写规范.整齐.整洁.可读. 无错误 无警告 2.排版 安装PowerCommands扩展 “工具”-“扩展管理库”,搜索安装. 设置选中Format document on save和 ...

  7. JavaScript AMD规范简单介绍(一)

    AMD是"Asynchronous Module Definition"的缩写.意思就是"异步模块定义". AMD定义了我们所用的模块都是是异步载入的,所以我们 ...

  8. JavaScript 开发规范

    本篇主要介绍JS的命名规范.注释规范以及框架开发的一些问题. 目录 1. 命名规范:介绍变量.函数.常量.构造函数.类的成员等等的命名规范 2. 注释规范:介绍单行注释.多行注释以及函数注释 3. 框 ...

  9. HTML 事件(一) 事件的介绍

    本篇主要介绍HTML中的事件知识:事件相关术语.DOM事件规范.事件对象. 其他事件文章 1. HTML 事件(一) 事件的介绍 2. HTML 事件(二) 事件的注册与注销 3. HTML 事件(三 ...

随机推荐

  1. go-006-运算符

    运算符用于在程序运行时执行数学或逻辑运算. Go 语言内置的运算符有: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 其他运算符 算术运算符 下表列出了所有Go语言的算术运算符.假定 A ...

  2. PAT 1055 The World's Richest[排序][如何不超时]

    1055 The World's Richest(25 分) Forbes magazine publishes every year its list of billionaires based o ...

  3. Mybatis一对一映射

    一.Mybatis一对一映射 本例讲述使用mybatis开发过程中常见的一对一映射查询案例.只抽取关键代码和mapper文件中的关键sql和配置,详细的工程搭建和Mybatis详细的流程代码可参见&l ...

  4. C语言——stdio.h

        int fgetc(FILE * stream); get character from stream 返回流中的一个字符,并以int的类型返回,如果碰到文件的结尾,或者一个错误发生,函数返回 ...

  5. B树、B+树、二叉树、红黑树

    B树下面来具体介绍一下B-树(Balance Tree),一个m阶的B树具有如下几个特征:1.根结点至少有两个子女.2.每个中间节点都包含k-1个元素和k个孩子,其中 m/2 <= k < ...

  6. 1 :2 Strust2—Demo

    =============================================================== Demo基础包:

  7. 牛客国庆集训派对Day3 Solution

    A    Knight 留坑. B    Tree 思路:两次树形DP,但是要考虑0没有逆元 可以用前缀后缀做 #include <bits/stdc++.h> using namespa ...

  8. la5135 无向图 点-双连通 运用

    大白书 P314 #include <iostream> #include <algorithm> #include <string.h> #include < ...

  9. 20165207 学习基础与C语言基础调查反馈

    文章阅读体会与学习调查反馈 文章阅读体会 我在娄老师的文章里了解到了"做中学"的概念.并且通过娄老师慷慨地分享的相关经验,我对于它有了进一步的理解以及体会.以下是我收获以及我的感想 ...

  10. JS的 instanceof 方法

    http://www.cnblogs.com/jasonxuli/p/6769282.html 这是 2014-12-10 发在 iteye 上的文章 今天突然想起js的原型继承模型和相关的proto ...