xlnt库

@[TOC]C++操作表格xlnt库简介

xlnt库简介

xlnt是一个开源库,背景介绍请移步github:[link](https://github.com/tfussell/xlnt) ;
使用xlnt库可以便捷的对xlsx格式的表格进行创建、读写等操作,在使用C++实现的数据科学项目中,可以用来方便地将实验结果记录成表格。

安装

从源码安装(win10+cmake+VS2017)

	a. 使用cmake打开 源码文件夹
	b. 选择编译方式为 Release win64 (要匹配目标工程的配置) 和 本地VS版本
	c. 设置输出工程目录
	d. 配置-生成
	e. 去输出目录打开 VS 工程
	f. 编译 得到 source/Release 下的库文件 和 dll 文件
	g. 将dll脚本文件复制到 C:\Windows\System32
	h. 配置工程属性 或 使用的属性表(工程属性要设置继承属性表)
		i. 设置包含目录 和 库目录
		ii. 编译器-》输入-》附加依赖项     添加  xlnt.lib

使用简介

xlsx表格与xlnt库对象对应表

xlsx对象含义xlnt对象属性
表格文件对应一个 xlsx文件xlnt::workbook可以有多个表格页
表格对应一个表格页Xlnt::worksheet表格标题在下边栏
行row从1开始的横行row_t包含行属性
列column从A开始的竖列column_t包含列属性
单元cell单元格Xlnt::cell内容和字体等属性

打开/创建 xlsx表格对象:

	xlnt::workbook wb; //创建一个空的表格对象
	wh.load(filepathname); // 加载一个表格文件到这个对象

创建sheet:

		xlnt::worksheet ws = wb.active_sheet(); // 在表格对象中创建一个新的sheet对象,如果表格文件中本来就有一个没有命名的对象,会直接加载这个对象
		给sheet命名
		ws.title(sheetname);

打开sheet:

		wb.sheet_by_title(sheetname); // sheet_by_index // sheet_by_id

实际进行读写操作主要操作的就是单元格cell

cell操作步骤:

	○ 定位cell
		§ ws.cell(xlnt::cell_reference(1, 1)); // 坐标定位
		§ ws.(column_t column, row_t row); // 坐标定位
		§ ws.cell("C3");// cell字符串名定位
	○ 读/写cell
		§ cell.value(); //写入cell
		§ cell.to_string(); // 读出字符串
	○ 给cell设置属性(字体属性)
		§ xlnt::font note_font;  //定义属性
			□ .color(xlnt::color::red()); //设置颜色
			□ .name("SimSun"); // 设置字体
			□ .bold(true);//加粗
			□ .size(13);//字体大小
		§ cell.font(note_font);//设置字体属性配置

操作行列属性:

	○ 行高
	○ 列宽
		§ xlnt::column_properties& mySetting = ws.column_properties(i);//获取原来的列属性
		§ mySetting.width = value;// 设置列宽

小节

以上操作足以满足基本的表格操作需求🍻

  • 5
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值