- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第
基于C语言的开源csv解析库MiniCSV的使用示例
目录MiniCSV简介官方示例csv文件解析示例
MiniCSV简介
之前写了一篇基于C语言字符串操作函数的csv文件解析:C语言解析csv格式文件,本文介绍一个开源简洁的csv解析库的使用:MiniCSV,使用标准C语言设计。
Atiny,fast,simple,single-file,BSD-licensedCSVparsinglibraryinC.
ShouldbeabletohandleCSVoddities:multi-lines,escapedrows,escapedcharactersinescapedrows,emptyrows,rowswithavariablenumberofcolumns,WindowsorUnix-stylelineendings.
Doesntperformanyheapallocations.
一个小型、快速、简单、单文件、BSD许可的C语言CSV解析库。
应该能够处理CSV的奇怪之处:多行、转义行、转义列中的转义字符、空行、列数可变的行、Windows或Unix风格的行结尾。
不执行任何堆分配。
开源地址
C语言版本
/jedisct1/minicsv
C++版本
/null_237_8629/minicsv_cpp
只有一个.c和一个.h文件,使用起来非常简单。
官方示例
#includestdio.h
#includestdlib.h
#includestdint.h
#includeminicsv.h
intdisplay_cols(char**cols,uint8_tcols_count)
printf(cols=%d:,cols_count);
for(inti=0;icols_count;i++)
printf([%s]\t,cols[i]);
printf(\n);
return0;
intmain(void)
char*cols[7];//每行逗号的个数+1
charstr_csv[]=line1,aa,bb,cc,dd,ee,ff\nline2,11,22,33,44\nline3,1,2,3,4,5;
char*r=str_csv;
uint32_tcols_count;//size_toruint32_t
uint8_tcols_max=sizeof(cols)/sizeof(cols[0]);//最多解析多少列
line1,aa,bb,cc,dd,ee,ff
line2,11,22,33,44
line3,1,2,3,4,5
printf(csvstring:\n%s\n\n,r);
//解析第1行
while(*r!=NULL)
r=minicsv_parse_line(r,cols,cols_count,cols_max);
//cols_count=当前行解析出的列数
display_cols(cols,cols_count);
printf(\nfinish!\n);
return0;
}
运行结果:
csvstring:
line1,aa,bb,cc,dd,ee,ff
line2,11,22,33,44
line3,1,2,3,4,5
cols=7:[line1][aa][bb][cc][dd][ee][ff]
cols=5:[line2][11][22][33][44]
cols=6:[line3][1][2][3][4][5]
finish!
csv文件解析示例
csv文件内容:
序号,姓名,性别,年龄,职位,兼任,备注
1,张珊,女,29,产品经理
2,李思,男,31,架构师,兼产品副经理,试用
3,王伟,男,27,开发工程师
4,赵丽,女,27,测试工程师,,实习
minicsv解析示例:
#includestdio.h
#includestdlib.h
#incl
您可能关注的文档
最近下载
- 2025贵州黔西南州畅达交通建设运输(集团)有限责任公司招聘10人笔试备考试题及答案解析.docx VIP
- 美容培训课件抗衰老ppt.pptx VIP
- 青溪无菌线考试试卷—无菌线岗位.docx VIP
- 医用吊塔(国产).pptx VIP
- T_HSQTA 002-2023_太平魁红茶_标准.pdf VIP
- 2025年治愈心理测试题及答案.doc VIP
- 医疗保险门诊特殊疾病申请表(异地).doc
- IPC-6012F 2023 EN,刚性印制板性能要求Qualification and Performance Specification for Rigid Printed Boards.pdf VIP
- N市公安机关涉警网络舆情处置问题研究.pdf VIP
- 全厂起重机电气设备安装施工方案.doc VIP
文档评论(0)