c++读取csv文件示例

简言

近段时间公司业务需要读写csv文件,网上搜来搜去没找到完善的库,其实我的要求的真不高,只是要求c或者c++语言,跨平台,结果愣是没有,后来从朋友那里找来一份他自己写的代码,用着还不错,现在拿出来给大家分享

描述

这份代码是比较完善的,读取,修改,删除功能都有提供,windows,linux下皆可运行

windows下的示例下载地址:

https://download.csdn.net/download/yzf279533105/11929740

linux下代码一样,只是需makefile,待有时间整理下也发上来

windows下运行如下图:

使用代码如下:

#include <stdio.h>
#include <map>
#include <iostream>
#include "csv.h"

using namespace std;

int main()
{
	string filename = "baigudong.csv";
	Csv* pCsv = Csv::CreateAndLoad(filename);
	if (pCsv == NULL)
	{
		printf("Csv::CreateAndLoad(),pCsv == NULL, filename=%s \n",filename.c_str());
		return 0;
	}

	// 读取
	int col =0;
	for(int i=CSV_OFFSET;i<pCsv->GetLines();i++)
	{
		col =0;

		MapConfig* pConf = new MapConfig;
		pConf->id		= pCsv->GetInt(i,col++);
		pConf->parent	= pCsv->GetInt(i,col++);
		pConf->name		= pCsv->GetString(i,col++);
		pConf->desc		= pCsv->GetString(i,col++);
		pConf->com		= pCsv->GetString(i,col++);

		// .....后面的不再一一写了
		
		printf("read map item, id=%d, parent=%d, name=%s, desc=%s, com=%s \n",pConf->id, pConf->parent, 
			pConf->name.c_str(),pConf->desc.c_str(),pConf->com.c_str());

		// 应该保存起来,这里暂时删除
		delete pConf;
	}

	// 修改
	// todo

	// 重新保存
	// todo

	getchar();
	return 0;
};
发布了105 篇原创文章 · 获赞 58 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/yzf279533105/article/details/102773096