iOS 中将数据导出成Excel文件 ---- libxlsxwriter框架

1.使用cocoapods导入libxlsxwriter

pod libxlsxwriter

在桥接文件中导入头文件
#import <xlsxwriter.h>

2.创建文件路径

let documentPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true).first!
let filePath = (documentPath as NSString).appendingPathComponent("标题.xlsx")
print(filePath)

3.创建表格并添加标题

let workbook = workbook_new(filePath)
let worksheet = workbook_add_worksheet(workbook, "工作表1")
worksheet_write_string(worksheet, 0, 0, "时间", nil)
worksheet_write_string(worksheet, 0, 1, "值", nil)
worksheet_write_string(worksheet, 0, 2, "阶段", nil)

4.往表格中写入数据

for (index,dic) in datas.enumerated() {
  let time = "\(dic["time"] ?? "")"
  let value = "\(dic["value"] ?? "0.0")"
  let real_value = "\(NSDecimalNumber(string: value).floatValue)"
  let desc = "\(dic["desc"] ?? "")"
 
    /*第一个参数是工作表
    第二个参数是行数(索引从0开始)
    第三个参数是列数(索引从0开始)
    第四个参数是写入的内容
    第五个参数是单元格样式,可为NULL。*/
   worksheet_write_string(worksheet, lxw_row_t(index + 1), 0, time, nil)
   worksheet_write_string(worksheet, lxw_row_t(index + 1), 1, real_value, nil)
   worksheet_write_string(worksheet, lxw_row_t(index + 1), 2, desc, nil)
   worksheet_set_column(worksheet, 0, 2, 20, nil)
}
workbook_close(workbook)

5.代码汇总

let documentPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true).first!
let filePath = (documentPath as NSString).appendingPathComponent("标题.xlsx")
print(filePath)

let workbook = workbook_new(filePath)
let worksheet = workbook_add_worksheet(workbook, "工作表1")
worksheet_write_string(worksheet, 0, 0, "时间", nil)
worksheet_write_string(worksheet, 0, 1, "值", nil)
worksheet_write_string(worksheet, 0, 2, "阶段", nil)

for (index,dic) in datas.enumerated() {
  let time = "\(dic["time"] ?? "")"
  let value = "\(dic["value"] ?? "0.0")"
  let real_value = "\(NSDecimalNumber(string: value).floatValue)"
  let desc = "\(dic["desc"] ?? "")"
   worksheet_write_string(worksheet, lxw_row_t(index + 1), 0, time, nil)
   worksheet_write_string(worksheet, lxw_row_t(index + 1), 1, real_value, nil)
   worksheet_write_string(worksheet, lxw_row_t(index + 1), 2, desc, nil)
   worksheet_set_column(worksheet, 0, 2, 20, nil)
}
workbook_close(workbook)

还可以设置表格的各种样式,如水平居中,垂直居中,边框等有需要的话可以在框架中自己查看摸索吧
在系统自带的 文件app 中打开查看Excel文件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值