登录
Excelize文档类库
分类:Golang源码 访问:431 下载量:0

软件介绍

更新时间:2023-02-21

Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel? 2007 及以上版本创建的电子表格文档。支持 XLSX / XLSM / XLTM 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件的文档,并提供流式读写 API,用于处理包含大规模数据的工作簿。可应用于各类报表平台、云计算、边缘计算等系统。使用本类库要求使用的 Go 语言为 1.10 或更高版本。


安装:

go get github.com/360EntSecGroup-Skylar/excelize

如果您使用 Go Modules 管理软件包,请使用下面的命令来安装最新版本。

go get github.com/360EntSecGroup-Skylar/excelize/v2


功能:

1、创建 Excel 文档

2、读取 Excel 文档

3、在 Excel 文档中创建图表

使用 Excelize 生成图表十分简单,仅需几行代码。您可以根据工作表中的已有数据构建图表,或向工作表中添加数据并创建图表。

4、向 Excel 文档中插入图片


更新日志:

v2.6.0

兼容性提示
重命名导出常量 NameSpaceDublinCoreMetadataIntiative 为 NameSpaceDublinCoreMetadataInitiative 以修复拼写错误
重命名导出变量 ErrUnsupportEncryptMechanism 为 ErrUnsupportedEncryptMechanism
重命名导出变量 ErrDataValidationFormulaLenth 为 ErrDataValidationFormulaLength
重命名导出变量 ErrDefinedNameduplicate 为 ErrDefinedNameDuplicate
移除了导出变量 XMLHeaderByte
移除了设置数据数据验证列表函数 SetSqrefDropList 的第二个形参 isCurrentSheet 和异常返回值
移除了行迭代器中的导出字段 TotalRows

新增功能
ProtectSheet 新增支持通过指定的算法保护工作表,支持的算法包括: XOR、MD4、MD5、SHA1、SHA256、SHA384 和 SHA512
UnprotectSheet 支持通过指定第二个可选参数在移除工作表保护时验证密码
新增 71 项公式函数: AVERAGEIFS, BETADIST, BETA.DIST, BETAINV, BETA.INV, BINOMDIST, BINOM.DIST, BINOM.DIST.RANGE, BINOM.INV, CHIINV, CHITEST, CHISQ.DIST, CHISQ.DIST.RT, CHISQ.INV, CHISQ.INV.RT, CHISQ.TEST, CONFIDENCE.T, CORREL, COVAR, COVARIANCE.P, CRITBINOM, ERROR.TYPE, EXPON.DIST, EXPONDIST, F.DIST, F.DIST.RT, FDIST, F.INV, F.INV.RT, FINV, FORMULATEXT, F.TEST, FTEST, GAMMA.DIST, GAMMADIST, GAMMA.INV, GAMMAINV, GAMMALN.PRECISE, GAUSS, HOUR, HYPGEOM.DIST, HYPGEOMDIST, INDIRECT, LOGINV, LOGNORM.DIST, LOGNORMDIST, LOGNORM.INV, MODE, MODE.MULT, MODE.SNGL, NEGBINOM.DIST, NEGBINOMDIST, PHI, SECOND, SERIESSUM, SUMIFS, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, T.DIST, T.DIST.2T, T.DIST.RT, TDIST, TIMEVALUE, T.INV, T.INV.2T, TINV, T.TEST, TTEST, TYPE
保存或另存为工作簿时增加对文件扩展名进行检查
支持设置工作簿视图模式和显示/隐藏标尺
引入依赖库 NFP (number format parser) 以增加对自定义时间、日期和文本类型数字格式的支持,可对包含 19 种语言(南非荷兰语、孟加拉语、汉语、英语、法语、德语、奥地利语、爱尔兰语、意大利语、俄语、西班牙语、泰语、藏语、土耳其语、威尔士语、沃洛夫语、科萨语、彝语和祖鲁语)本地月份名称和 12 小时制格式的数字格式表达式进行解析
新增 API: SetWorkbookPrOptions 和 GetWorkbookPrOptions 支持设置和获取工作簿中的 FilterPrivacy 与 CodeName 属性,以解除部分情况下向工作簿中嵌入 VBA 工程时的限制
公式计算引擎支持中缀运算符后包含无参数公式函数的计算
支持以文本形式读取布尔型单元格的值
通过 AddChart 函数添加圆环图时,支持指定圆环图内径大小
新增导出 4 项错误信息 ErrPasswordLengthInvalid, ErrUnsupportedHashAlgorithm, ErrUnsupportedNumberFormat, ErrWorkbookExt,以便开发者可根据不同的错误类型进行采取相应处理

兼容性提升
提升与 LibreOffice 电子表格应用程序的兼容性,修复在 LibreOffice 中打开的工作表名包含空格时,自动过滤器失效的问题
提升对工作簿中替代内容的支持,保留工作簿、工作表以及 drawingML 中的替代内容
提升与页面设置中打印质量 DPI 设置属性的兼容性

问题修复
修复另存为工作簿时,页面布局属性丢失的问题
修复部分情况下,对工作表进行修改后合并单元格区域未更新的问题
修复样式解析异常导致的粗体和部分其他字体样式丢失问题
修复部分情况下将文档保存为 XLAM / XLSM / XLTM / XLTX 格式后文档损坏的问题
单元格样式支持继承行/列样式,以修复对工作表进行修改后合并单元格区域单元格样式不正确的问题
修复部分情况下获取单元格样式 ID 错误的问题
修复编号为 42 的内建数字格式定义错误的问题
修复部分情况下数字精度解析错误的问题
SetCellDefault 支持设置非数字类型单元格的值
修复部分情况下另存为工作簿时,显示或隐藏工作表标签属性丢失的问题
修复部分情况下嵌套公式计算错误的问题
修复部分情况下公式计算结果精度不准确以及在 x86 和 arm64 架构 CPU 下公式计算结果精度不一致的问题
修复部分情况下使用科学记数法表示的数值解析失败的问题
修复图表轴最大值最小值为 0 时不起作用的问题

性能优化
提高使用行迭代器进行流式读取的性能,当读取包含大规模数据的电子表格文档时,内存开销相较于上一版本降低最高约 50%,内存垃圾回收次数降低约 80%

其他
Go Modules 依赖模块更新
单元测试与文档更新
包含简体中文、英语、法语、俄语、日语、韩语、阿拉伯语、德语和西班牙语的多国语言文档网站更新

本站所有资源都是由网友投稿发布,或转载各大下载站, 请自行检测软件的完整性!

本站所有资源仅供学习与参考,请勿用于商业用途,否则 产生的一切后果将由您自己承担!

如有侵权请联系我们删除下架,联系方式:study_golang@163.com

最新教程

查看更多
  • Vue.js 微实战--十天技能课堂
    Vue.js 微实战--十天技能课堂
    咨询微信:ycku_com;该课程是一门实战性质的课程,重点围绕Vue.js框架展开。课程中包含了四个小实战项目:计算器、打卡、史今查询和手机归属地。学习者将通过这些实际的小项目,学会如何使用Vue.js框架构建各种类型的应用。从简单的计算器到更复杂的打卡系统、查询功能和API调用,学习者将掌握Vue.js的核心概念、组件化开发、状态管理以及与后端API的交互。通过这些实战项目,学习者将能够获得丰
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让学生了解MySQL如何与客户端进行通信。此外,课程还将介绍如何优化MySQL的网络通信性能,包括连接池、网络压缩、SSL加密等高级技术。学生将通过实践项目,亲手
  • golang socket 编程
    golang socket 编程
    如有问题加微信:Le-studyg;本课程从基础概念讲起,涵盖了socket编程的核心概念、Golang的socket编程接口、常见协议和案例实战等内容。通过系统地学习,学员将掌握如何使用Golang进行高效的socket编程,从而为开发高性能的网络应用打下坚实的基础。
  • Golang云原生架构师课程
    Golang云原生架构师课程
    Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
  • Golang深入理解GPM模型
    Golang深入理解GPM模型
    Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
  • Go语言课程Gin框架实战
    Go语言课程Gin框架实战
    Gin是一个用Go(Golang)编写的HTTPweb框架。它是一个类似于 martini 但拥有更好性能的API框架,由于 httprouter,速度提高了近40倍。如果你需要极好的性能,使用Gin吧。