Excelize 发布 2.1.0 版本,Go 语言最受欢迎的 Excel 文档基础库
Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel™ 2007 及以上版本创建的电子表格文档。支持 XLSX / XLSM / XLTM 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件的文档,并提供流式读写 API,用于处理包含大规模数据的工作簿。可应用于各类报表平台、云计算、边缘计算等系统。入选 2018 开源中国码云 Gitee 最有价值开源项目 GVP,目前已成为 Go 语言最受欢迎的 Excel 文档基础库。
开源代码
GitHub: github.com/xuri/excelize
Gitee: gitee.com/xurime/excelize
中文文档: xuri.me/excelize/zh-hans
Excelize 知名用户
2020年2月10日,社区正式发布了 2.1.0 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化。下面是有关该版本更新内容的摘要,完整的更改列表可查看 changelog。
Release Notes
此版本中最显著的变化包括:
新增功能
- 新增
DeleteDefinedName
方法,支持从工作簿或工作表中删除名称 - 新增
SetPageMargins
和GetPageMargins
方法,支持获取和设置页面边距 - 新增
DeleteChart
和DeletePicture
方法,支持从工作表中删除图表和图片 - 增加对非 UTF-8 编码 Excel 文档的支持
- 函数
AddChart
现已支持创建子母饼图、复合条饼图和组合图 - 函数
AddChart
新增设置图表主要网格线支持,相关 issue #501 - 函数
AddChart
支持设置折线图线条宽度,相关 issue #505 - 函数
AddChart
现已支持指定图表坐标轴标签间隔单位,相关 issue #538 - 函数
SetColVisible
支持对指定范围内的多列进行可见行设置 - 函数
AddPivotTable
支持创建数据透视表时,所引用数据源区域存在空列,相关 issue #511
问题修复
- 修复单元格值的末尾空白字符丢失问题
- 函数
MergeCell
支持重叠合并单元格处理,解决 issue #533 - 修复某些情况下空内联富文本丢失的问题,解决 issue #529
- 修复对空工作簿视图的处理,解决 issue #426
- 增加对公式中存在的转义字符处理,解决 issue #546
性能表现
- 新增
NewStreamWriter
和Flush
方法,适用于生成包含大规模数据的工作表。与非流式写入相比,可降低 90.2% 的内存开销、节省 53% 时间 - 函数
GetRows
内存采用流式数据读取,读取电子表格文档内存开销降低 87.9%,相关 issue #146 和 issue #382 - 兼容性提升,新增 49 个文档内部 XML 命名空间支持
其他
- 对于解析 XML 过程出现的异常将使用日志记录,相关 issue #539
- 提高单元测试覆盖度(行覆盖度:97.04%)
- 完善单元测试中的错误处理
- 包含简体中文、英语、法语、俄语、日语和韩语的多国语言文档网站更新
- 技术交流群
DingTalk Group ID: 30047129
QQ Group ID: 207895940
WeChat ID: hixuri
(请备注: Excelize)
本作品采用《CC 协议》,转载必须注明作者和本文链接