iOS使用libxlsxwriter导出excel文件
使用cocoapods
导入libxlsxwriter
,导入头文件:
pod libxlsxwriter
生成xlsx
创建表格workbook
,和工作表worksheet
:
lxw_workbook *workbook = workbook_new([path UTF8String]);// 创建新xlsx文件,路径需要转成c字符串
lxw_worksheet *worksheet = workbook_add_worksheet(workbook, NULL);// 创建sheet
保存生成文件:
workbook_close(workbook);
设置列宽:
// 设置列宽
/* 五个参数分别是:worksheet Pointer to a lxw_worksheet instance to be updated.first_col The zero indexed first column.last_col The zero indexed last column.width The width of the column(s).format A pointer to a Format instance or NULL.从第first_col到last_col的列的宽度为width,索引从0开始 */
worksheet_set_column(worksheet, 0, 2, 20, NULL);
worksheet_set_column(worksheet, COLS("Name:Type"), 5, NULL);
单元格属性设置:
设置单元格格式使用lxw_format
,可以设置字体、颜色、对齐方式、边框等等所有属性。具体属性可阅读参考格式文档。
- 新建单元格格式对象:
lxw_format *format = workbook_add_format(workbook);
- 字体设置:
format_set_bold(format);// 加粗
format_set_font_color(format, LXW_COLOR_RED);//颜色
- 设置对齐方式,所有对齐参数设置参阅:format_set_align
format_set_align(format, LXW_ALIGN_CENTER);// 水平居中
format_set_align(format, LXW_ALIGN_VERTICAL_CENTER);//垂直居中
- 设置边框,所有边框设置参阅:format_set_border
format_set_border(format, LXW_BORDER_MEDIUM);// 边框(四周):中宽边框
format_set_right(format, LXW_BORDER_DOUBLE);// 右边框:双线边框
- 设置数字格式,所有数字格式设置参阅:format_set_num_format
format_set_num_format(format, "¥#,##0.00");
单元格写入数据:
/*第一个参数是工作表第二个参数是行数(索引从0开始)第三个参数是列数(索引从0开始)第四个参数是写入的内容第五个参数是单元格样式,可为NULL。*/// 写入文字
worksheet_write_string(worksheet, 1, 0, "Hello", format);
worksheet_write_string(worksheet, 1, 1, "World", NULL);
// 写入数字
worksheet_write_number(worksheet, 2, 0, 123.456, format);
worksheet_write_number(worksheet, 3, 0, 123.456, NULL);
- 数学公式,具体使用参阅:worksheet_write_formula
在(4,0)位置即A5上输出A3和A4的和:
worksheet_write_formula(worksheet, 4, 0, "=SUM(A3:A4)", format);
- 标题栏固定
worksheet_freeze_panes(worksheet, 1, 2);// 标题栏:前1行、前2列固定
完整代码:
lxw_workbook *workbook = workbook_new([path UTF8String]);// 创建新xlsx文件,路径需要转成c字符串lxw_worksheet *worksheet = workbook_add_worksheet(workbook, NULL);// 创建sheet// 添加格式lxw_format *format = workbook_add_format(workbook);//设置格式format_set_bold(format);format_set_font_color(format, LXW_COLOR_RED);format_set_align(format, LXW_ALIGN_CENTER);// 水平居中format_set_align(format, LXW_ALIGN_VERTICAL_CENTER);//垂直居中format_set_border(format, LXW_BORDER_MEDIUM);// 边框(四周):中宽边框format_set_right(format, LXW_BORDER_DOUBLE);// 右边框:双线边框format_set_num_format(format, "¥#,##0.00");// 设置列宽/* 五个参数分别是:worksheet Pointer to a lxw_worksheet instance to be updated.first_col The zero indexed first column.last_col The zero indexed last column.width The width of the column(s).format A pointer to a Format instance or NULL.从第first_col到last_col的列的宽度为width,索引从0开始 */worksheet_set_column(worksheet, 0, 2, 20, NULL);worksheet_set_column(worksheet, 3, 4, 30, format);//写入数据/*第一个参数是工作表第二个参数是行数(索引从0开始)第三个参数是列数(索引从0开始)第四个参数是写入的内容第五个参数是单元格样式,可为NULL。*/worksheet_write_string(worksheet, 0, 0, "Name", NULL);worksheet_write_string(worksheet, 0, 1, "Type", NULL);worksheet_write_string(worksheet, 0, 2, "City", NULL);worksheet_write_string(worksheet, 0, 3, "Address", NULL);worksheet_write_string(worksheet, 0, 4, "Mobile", NULL);for (int i = 0; i < models.count; i ++) {PoiResultModel *model = models[i];worksheet_write_string(worksheet, i+1, 0, model.name.UTF8String, NULL);worksheet_write_string(worksheet, i+1, 1, model.type.UTF8String, NULL);worksheet_write_string(worksheet, i+1, 2, model.city.UTF8String, NULL);worksheet_write_string(worksheet, i+1, 3, model.address.UTF8String, NULL);worksheet_write_string(worksheet, i+1, 4, model.tel.UTF8String, NULL);}//关闭,保存文件workbook_close(workbook);
iOS使用libxlsxwriter导出excel文件相关推荐
- 如何使用JavaScript实现纯前端读取和导出excel文件(转)
转自小茗同学博客:https://www.cnblogs.com/liuxianan/p/js-excel.html js-xlsx 介绍 由SheetJS出品的js-xlsx是一款非常方便的只需要纯 ...
- 如何使用JavaScript实现纯前端读取和导出excel文件
js-xlsx 介绍 由SheetJS出品的js-xlsx是一款非常方便的只需要纯JS即可读取和导出excel的工具库,功能强大,支持格式众多,支持xls.xlsx.ods(一种OpenOffice专 ...
- vue2.0通过Axios导出excel文件(解决乱码问题)
vue2.0通过Axios导出excel文件(解决乱码问题) 参考文章: (1)vue2.0通过Axios导出excel文件(解决乱码问题) (2)https://www.cnblogs.com/ad ...
- php 将数组导出excel,#php 怎样将 数组导出excel文件#前端导出excel表格
php 怎样将 数组导出excel文件 public function excel() { //在这里你要导出的数据 $data = M('pmproject',"pm_",MYS ...
- 【转】 (C#)利用Aspose.Cells组件导入导出excel文件
Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...
- Java poi插件导出Excel文件合并多sheet页
文章目录 一.java导出excel格式文件 二.excel文件多sheet页合并 前言:2020年第一篇文章,就写这两天工作中遇到的这个小需求吧,导出多excel,每个excel有多个sheet页, ...
- C#导出Excel文件,过长数值显示为科学计数法解决方法 C#
C#导出EXCEL文件,身份证号码或某些ID内容长度超过15个数字,这样导出的Excel文件中默认情况下将这个值以科学计数方式显示,下面提供两种解决方式: 1.在转出的内容前,加上一个TAB符号,C# ...
- springboot中使用poi导出excel文件(亲测实现了第一个功能)
1.POI简介 Jakarta POI 是一套用于访问微软格式文档的Java API. 组件HWPF用于操作Word的; 组件HSSF用于操作Excel格式文件. 2.常用组件 HSSFWorkboo ...
- java导入、导出Excel文件
一.介绍 当前B/S模式已成为应用开发的主流,而在企业办公系统中,常常有客户这样子要求:你要把我们的报表直接用Excel打开(电信系统.银行系统).或者是:我们已经习惯用Excel打印.这样在我们实际 ...
最新文章
- 辽宁省计算机专业A类,辽宁省2008年中职升高职招生考试计算机专业综合试题
- HTML5背后的故事
- RTX 3090的深度学习环境配置指南:Pytorch、TensorFlow、Keras
- python中文正则匹配初步使用
- 微信小程序——云服务环境的配置
- 牛客题霸 车站建造问题 C++题解/答案
- [转载]SQL Plus 一些使用技巧
- django-路由传参-视图捕获URL的参数-位置传参-关键词传参
- Citrix XenApp 5.0 Uninstall
- 幼师学计算机心得体会怎么写,幼儿教师学习心得
- 隐藏版本信息号返回服务器名,Apache服务器隐藏版本号和系统
- Dom4j 读取一个XML文件和将String写成XML文件
- pdms二次开发入门 c#语言
- 【地理信息技术】 上机02 制作上海市行政区划图
- 100个特别的遥感应用和用途
- WPF应用无法使用Snoop分析的解决办法
- 广东深圳计算机学校排名2015,2015年广东深圳重点小学排名
- Matlab的GUI程序转换为单独可执行的exe文件
- CANVAS LMS开源系统
- 基于flask构建微服基本demo