将excel表格转换为Latex表格

前几天说是要学学Excel,刚好想把Excel的数据转换为Latex表格形式,就先从CSV文件格式入手,准备写一个CSV文件转换为Latex表格的程序。



一直以为CSV文件格式就是用逗号来间隔每个field,今天读了一下CSV的标准文件RFC 4180 Common Format and MIME Type for Comma-Separated Values (CSV) Files,没想到CSV文件的规则还挺多。


规则1: 每个记录(record)之间用“CRLF”来分割
CR(回车符)LF(改行符)在Windows下就表现为改行

例:

aaa,bbb,ccc CRLF

zzz,yyy,xxx CRLF


规则2: 最后一条记录之后可以没有“CRLF”

例:

aaa,bbb,ccc CRLF

zzz,yyy,xxx


规则3:第一行也可以是标题(header)

例:

field_name,field_name,field_name CRLF

aaa,bbb,ccc CRLF

zzz,yyy,xxx CRLF


规则4:每个field之间用逗号分开,但最后一个field之后不可以用逗号结束。

自注:最后一个field要用逗号结束的话,必须用双引号将field引起来。见规则5,规则6

例:

aaa,bbb,ccc


规则5:每个field可以用双引号“引起来

例:

”aaa“,”bbb“,”ccc“

自注:Excel文件保存为CSV文件的时候,文字列都用双引号引用,数值则不用


规则6:包含有CRLF,双引号自身,逗号字符的field要用双引号引用起来

例:

"a,b", "c CRLF

d" CRLF

虽然有两行,但是是一条记录(一个record)


规则7:field中的双引号用两个连续的双引号来表示

例:

1"23' 的field如下表示

"1""23' "

1 条评论:

Ayayo 说...

工具在线转,https://tableconvert.com/

发表评论