Excelize 发布 2.4.1 版本,新增并发安全支持

栏目: 软件资讯 · 发布时间: 3年前

内容简介:Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel™ 2007 及以上版本创建的电子表格文档。支持 XLSX / XLSM / XL...

Excelize 发布 2.4.1 版本,新增并发安全支持

Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel™ 2007 及以上版本创建的电子表格文档。支持 XLSX / XLSM / XLTM 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件的文档,并提供流式读写 API,用于处理包含大规模数据的工作簿。可应用于各类报表平台、云计算、边缘计算等系统。入选 2020 Gopher China - Go 领域明星开源项目 (GSP)、2018 开源中国码云 Gitee 最有价值开源项目 GVP,目前已成为 Go 语言最受欢迎的 Excel 文档基础库。

Gitee: gitee.com/xurime/excelize

2021年8月2日,社区正式发布了 2.4.1 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化。下面是有关该版本更新内容的摘要,完整的更改列表可查看 changelog

Release Notes

此版本中最显著的变化包括:

兼容性提示

Go Modules 包引用地址调整为 github.com/xuri/excelize/v2

新增功能

  • 新增流式设置工作表列宽度支持,相关 issue #625
  • 新增流式创建合并单元格支持,相关 issue #826
  • 公式计算引擎新增 2 项公式函数支持: BESSELK, BESSELY
  • 公式计算引擎支持自定义名称引用,相关 issue #856
  • 添加图表时支持设置不显示主要横纵坐标轴
  • 通过 AddPivotTable 创建数据透视表支持通过自定义名称动态引用数据源
  • 以下函数新增支持并发安全调用,相关 issue #861
    • AddPicture 和 GetPicture 并发插入/获取图片
    • Rows 和 Cols 并发行/列迭代
    • SetSheetRow 并发按行赋值
    • SetCellStyle 并发设置单元格样式
    • NewStyle 并发创建样式
  • 导出 24 个内部异常消息

兼容性提升

  • 提升内部默认 XML 命名空间兼容性,修复部分情况下生成文档损坏的问题
  • 兼容带有非标准页面布局属性数据类型的电子表格文档,避免打开失败的问题
  • 增加内部共享字符表计数
  • 解除通过给定的时间设置单元格的值时,需要协调世界时 (UTC) 的限制,相关 issue #409
  • 增加对内部 XML 控制字符的兼容
  • 重命名导出字段 File.XLSX 为 File.Pkg
  • 修改 NewSheetGetSheetIndexDeleteSheet 对工作表名称大小写不敏感,相关 issue #873
  • 修复条件格式与数据透视表的兼容性问题,解决 issue #883
  • 改进与页面布局中无效的首页编号属性的兼容性
  • SetCellRichText 增加字符数上限检查并修复保留字符丢失问题

问题修复

  • 修复部分情况下 12/24 制小时时间格式解析异常的问题,解决 issue #823 和 issue #841
  • 修复部分情况下无法通过 GetComments 获取批注的问题,解决 issue #825
  • 修复设置和获取批注时支持多个批注作者,解决 issue #829 和 #830
  • 修复命名空间地址解析异常而产生重复命名空间,导致删除再创建同名工作表后的生成文档损坏问题,解决 issue #834
  • 修复当设置工作表分组默认属性 showOutlineSymbolssummaryBelow 和 summaryRight 为 false 时,设置失效的问题
  • 修复部分情况下 GetRows 返回冗余工作表尾部空行的问题,解决 issue #842
  • 修复部分情况下获取获取单元格的值时,未返回带有公式的空单元格的问题,解决 issue #855
  • 修复部分情况下 IF 公式条件运算错误问题,解决 issue #858
  • 修复通过 GetRowHeight 获取行高度错误的问题
  • 修复部分情况下因范围解析异常导致获取和删除自定义名称错误的问题,解决 issue #879
  • 修复设置自定义名称时关联工作表索引错误的问题
  • 修复设置列样式时已有单元格样式未被更新的问题,解决 issue #467
  • 修复使用非法数据引用范围创建数据透视表时导致的潜在 panic 的问题
  • 修复部分情况下读取数字精度异常的问题,解决 issue #848 和 #852
  • 修复设置数据验证规则时,部分情况下因未进行 XML 字符转义处理导致生成文档损坏的问题,解决 issue #971
  • 修复设置数据验证规则长度校验不准确问题,解决 issue #972
  • 修复由时间解析异常导致的,部分情况下读取带有时间或日期数字格式单元格时 CPU 资源占用率过高问题,解决 issue #974
  • 修复部分情况下,当自定义数字格式为日期时,月份解析失败的问题

性能优化

  • 通过 Save 保存或 SaveAs 另存文档时的内占用降低约 19%

其他

  • 修复潜在的代码安全问题 CWE-190 和 CWE-681
  • Go Modules 依赖模块更新
  • 单元测试与文档更新
  • 持续集成服务改用 GitHub Action
  • 包含简体中文、英语、法语、俄语、日语、韩语、阿拉伯语、德语和西班牙语的多国语言文档网站更新

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

计算机和难解性

计算机和难解性

M.R 加里、D.S. 约翰逊 / 张立昂、沈泓 / 科学出版社 / 1987年 / 4.50

本书系统地介绍了NP完全性理论的概念和方法,全书共分为7章和两个附录。第一章粗略地介绍了计算复杂性的一些基本概念和NP完全性理论的意义。第二章至第五章介绍了NP完全性的基本理论和证明的方法。第六章集中研究NP难问题的近似算法。第七章概述了大量计算复杂性中的有关理论课题。 附录A收集了范围广泛、内容丰富的NP完全性和NP难的问题、附录B补充了NP问题的一些最新的进展,既有理论方面的,又有关于具体问题......一起来看看 《计算机和难解性》 这本书的介绍吧!

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具