C++操作Excel表格
我们这里使用开源的第三方库xlnt,环境是Windows,IDE是visual studio
环境配置就不再介绍了,我们这里是使用vcpkg直接的,你们可以也去GitHub下载自己编译
读xlsx文件并存入vector内
#include <iostream> #include <xlnt/xlnt.hpp> #include<vector> #include<vector> #include<string>int main(){std::vector<std::vector<std::string>>value{};xlnt::workbook wb;//创建一个工作簿对象wb.load("test.xlsx");auto ws = wb.active_sheet();//返回工作表对象// 会把当前占用的单元格全都打印出来,空单元格则为空格。for (auto row : ws.rows(false)){std::vector<std::string>tmp{};for (auto cell : row) {tmp.emplace_back(cell.to_string());std::clog << cell.to_string() << "\t";}value.emplace_back(tmp);std::clog << std::endl;}std::cout << "---------------------------------------------\n";for (auto i : value) {for (auto j : i) {std::cout << j << '\t';}std::endl(std::cout);} }
创建xlsx写,设置单元格格式
#include <iostream> #include <xlnt/xlnt.hpp>int main() {xlnt::workbook wb;xlnt::worksheet ws = wb.active_sheet();//设置工作表名称ws.title("data");//赋值为数值ws.cell("A1").value(0.5);//设置单位格格式,设为百分比形式ws.cell("A1").number_format(xlnt::number_format::percentage());//赋值为字符串ws.cell("B2").value("string data");//赋值为公式ws.cell("C3").formula("=RAND()");//合并单元格ws.merge_cells("C3:C4");//冻结窗格ws.freeze_panes("B2");//保存wb.save("test_save.xlsx"); }
批量写入xlsx
#include <iostream> #include <xlnt/xlnt.hpp> #include <vector> #include <string>int main(){std::vector< std::vector<std::string> > wholeWorksheet;for (int outer = 0; outer < 10; outer++){std::vector<std::string> singleRow;for (int inner = 0; inner < 10; inner++){//给vector中的每个元素赋值singleRow.emplace_back(std::to_string(inner + 1));}wholeWorksheet.emplace_back(singleRow);}//创建工作簿xlnt::workbook wbOut;//创建工作表,并把vector中的元素写入表格xlnt::worksheet wsOut = wbOut.active_sheet();//给工作表设置名称wsOut.title("data");for (int fOut = 0; fOut < wholeWorksheet.size(); fOut++){for (int fIn = 0; fIn < wholeWorksheet.at(fOut).size(); fIn++){std::string cell = xlnt::cell_reference(fIn + 1, fOut + 1).to_string();// 给单元格赋值。特别注意:工作表中的单元格下标是从1开始,而vector中的元素下标是从0开始wsOut.cell(cell).value(std::stoi(wholeWorksheet[fOut][fIn]));//将单元格格式设置为数字.00格式wsOut.cell(cell).number_format(xlnt::number_format::number_00());}}wbOut.save("test_save.xlsx"); }
需要注意,如果设置单元格value的时候使用的是string,那么不管再设置什么格式都是无效的,都只是文本格式
C++操作Excel表格相关推荐
- python excel操作单元格_python 操作excel表格的方法
说明:由于公司oa暂缺,人事妹子在做考勤的时候,需要通过几个excel表格去交叉比对员工是否有旷工或迟到,工作量大而且容易出错. 这时候it屌丝的机会来啦,花了一天时间给妹子撸了一个自动化脚本. 1. ...
- 使用VC来操作Excel表格的源码
下面的代码段是关于使用VC来操作Excel表格的的代码,应该对小伙伴们也有用. if (CoInitialize(NULL) != 0) { AfxMessageBox("初始化COM支持库 ...
- python 编辑excel需要什么包_Python 中操作EXCEL表格的包
今天,马云爸爸又来贡献金句了,比王健林公公一亿一个小目标还高,"一个月挣一二十个亿很难受!!!",作为在传统企业主要为电商部门提供数据分析的数据分析师,体验太深刻了. 双11前后, ...
- android jxl.jar 使用,使用jxl.jar在Android中操作Excel表格——重中之重——对隐藏表的处理...
曾简单了解过C#,将Excel(数据库表)表中的数据导入到C#中,使用C#制作的图形化界面进行对Excel表中数据进行操作. 今天想试试,在Android中导入Excel表格进行操作.在网上查阅资料, ...
- 【web开发】☆★之利用POI操作Excel表格系列教程【6】遍历工作簙行和列取值
[web开发]☆★之利用POI操作Excel表格系列教程[6]遍历工作簙行和列取值 package com.xiaoye.demo; import java.io.FileInputStream; i ...
- Python操作Excel表格(二)
Python操作Excel表格第二弹 本博客在前一篇博客基础上增加了若干函数,如按列寻找值,查重和增强型查重.数据写入等相关代码.实现了类似Sql的查询(注解中的SQL语句仅做参考,并非可执行SQL) ...
- java操作excel方法_Java实现操作excel表格的方法
Java开发人员开发的项目需要自动读取数据,其实我们还需要用程序处理Excel数据表,接下来爱站技术频道小编就为大家讲解Java实现操作excel表格的方法吧! 一:查 (查找本地指定位置的excel ...
- python openpyxl操作Excel表格
原创:未经允许不得转载,转载需标明出处 打算分为两个部分: 第一部分为:操作Excel表格 第二部分为:操作Excel图表 现在发布为第一部分内容 在最近的项目中的使用到了提取Android帧率日志, ...
- python操作xls_python操作excel表格的方法
这篇文章我们来讲一下在网站建设中,python操作excel表格的方法.本文对大家进行网站开发设计工作或者学习都有一定帮助,下面让我们进入正文. 说明:由于公司oa暂缺,人事妹子在做考勤的时候,需要通 ...
- Java 操作excel表格 - JXL(Java excel api)
Java 操作excel表格 Java 操作 Excel 最常用的就是JXL(Java excel api)和POI,用起来挺简单的,不过相应的其功能也并非很强大,够用就行! 首先,下载jxl.jar ...
最新文章
- 关于在VS2005环境下无法从源视图切换到设计视图的解决方案
- 把文件每行的tab键分隔符改成逗号分隔符
- 听得我都激动了……喝死奥巴马,你怎么看?
- WCF中安全的那些事!!!
- 智能实验室-全能优化(Guardio) 5.10.0.1150
- spring—Bean实例化三种方式
- python 交互式可视化库_Python 交互式可视化库
- micropython中文社区 socket通讯_基于micropython的TCP客户端编程
- 在Flex中获取一个屏幕截图(Screenshot)并将其传递给ASP.NET
- GIT提交(COMMIT)代码时,不显示新建的文件
- UVA10909 Lucky Number题解
- (01)C++之设计模式演变
- WPF 学习笔记(十二)
- SCI文章下载网址收藏
- Linux指令系统文件复制到U盘
- python操作word题注样式_Word 有什么技巧,让你相见恨晚?
- 计算机语言phal语言,phalapi
- ##DBUtils工具类的正确使用(一)
- 随便记录点 在 贴吧 里 讨论 广义相对论 的 想法
- 增强学习导论 中文版