当前位置:

Excelize文档类库 v2.8.1

收藏
举报
Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel? 2007 及以上版本创建的电子表格文档。支持 XLSX / XLSM / XLTM 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件的文档,并提供流式读写 API,用于处理包含大规模数据的工作簿。
  • 作者:
    暂无
  • 演示网站:
    暂无
  • 当前版本:
    v2.8.1
  • 日期:
    2024-03-14
  • 相关链接:
    Home Page
  • 所属分类:
    文档管理系统 Go
  • 软件评级:
  • 下载人气:
    581
免费下载
求购此源码
源码详情
免费下载
更新日志
联系客服/入群
源码属性
授权 开源
大小 859.54KB
语言 Go
运行环境 Go
功能介绍
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 依赖模块更新
单元测试与文档更新
包含简体中文、英语、法语、俄语、日语、韩语、阿拉伯语、德语和西班牙语的多国语言文档网站更新
付费服务
模板/插件
当前版本

v2.8.1

更新内容

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

兼容性提示
移除了 ChartLine 数据类型中的 Color 字段
使用 RichTextRun 数据类型代替 ShapeParagraph
使用 Fill 代替 Shape 数据类型中的 Color 字段
移除了已导出的数据类型 AutoFilterListOptions
将数据类型 TableOptions 重命名为 Table
添加图表函数 AddChart 改为使用 ChartType 类型枚举值指定图表类型
修改了以下 7 个函数的签名
将 func (f *File) AutoFilter(sheet, rangeRef string, opts *AutoFilterOptions) error 修改为 func (f *File) AutoFilter(sheet, rangeRef string, opts []AutoFilterOptions) error
将 func (f *File) AddPictureFromBytes(sheet, cell, name, extension string, file []byte, opts *GraphicOptions) error 修改为 func (f *File) AddPictureFromBytes(sheet, cell string, pic *Picture) error
将 func (f *File) GetPicture(sheet, cell string) (string, []byte, error) 修改为 func (f *File) GetPictures(sheet, cell string) ([]Picture, error)
将 func (f *File) AddVBAProject(bin string) error 修改为 func (f *File) AddVBAProject(file []byte) error
将 func (f *File) GetComments() (map[string][]Comment, error) 修改为 func (f *File) GetComments(sheet string) ([]Comment, error)
将 func (f *File) AddTable(sheet, rangeRef string, opts *TableOptions) error 修改为 func (f *File) AddTable(sheet string, table *Table) error
将 func (sw *StreamWriter) AddTable(rangeRef string, opts *TableOptions) error 修改为 func (sw *StreamWriter) AddTable(table *Table) error

新增功能
新增函数 SetSheetDimension 与 GetSheetDimension 以支持设置与获取工作表已用区域
创建样式函数 NewStyle 现已支持 17 种渐变填充样式
增加创建样式数量上限至 65430
通过 AddPicture 添加图片时,现已允许插入 BMP 格式图片
函数 GetPictures 支持读取被添加至同一单元格中的多张图片
设置条件格式函数 SetConditionalFormat 支持设置带有“如果为真则停止”和“图标集”条件的条件格式规则
设置条件格式函数 SetConditionalFormat 支持设置在条件格式中使用带有纯色填充样式的数据条,并支持指定数据条的颜色
添加图表函数 AddChart 支持设置图表中各个数据系列使用自定义填充颜色
添加图表函数 AddChart 支持设置气泡图图表中各个系列气泡的大小
添加图表函数 AddChart 支持设置子母饼图和复合条饼图中第二绘图区域的数据系列
添加图表函数 AddChart 支持为图表中数据标签设置自定义数字格式
创建表格函数 AddTable 支持在创建表格时指定是否包含标题行
创建表格函数 AddTable 创建表格时增加对表格名称的校验,并导出了错误常量 ErrTableNameLength
函数 AutoFilter 支持为筛选范围内的多个列设置筛选条件
计算单元格的值函数 CalcCellValue 现已支持指定是否为公式计算结果应用数字格式
计算单元格的值函数 CalcCellValue 对于以下公式函数加入了双字节字符的支持:LEFT, LEN, LENB, MID, MIDB, RIGHT 和 RIGHTB
计算单元格的值函数 CalcCellValue 函数对于存在错误的公式将在计算结果中返回公式错误代码,并将详细错误信息在 error 数据类型的返回值中返回
对输入图片文件的扩展名调整为大小写不敏感
使用流式写入器流式按行赋值时,对于值为 nil 的单元格将会跳过生成该单元格
获取超链接 GetCellHyperLink 函数支持读取合并单元格中的超链接
添加了新的导出类型 ChartType 以表示图表类型枚举

兼容性提升
兼容带有函数组的工作簿
兼容带有严格模式 XML 命名空间地址的工作簿主题,相关 issue #1447
提高了与文档内部不含工作簿关系部件工作簿的兼容性,以修复打开此类工作簿可能出现的 panic

问题修复
修复了特定情况下读取日期时间类型单元格的值存在精度误差的问题
修复了特定情况下当修改原本存储了日期时间类型的单元格为文本类型值,修改后单元格数据类型有误的问题
修复了部分情况下公式计算结果为空的问题
修复了设置数据条类型条件格式时,指定自定义最大/最小值无效的问题
修复了打开行高或列宽为 0 的工作表,保存后行高列宽设置失效的问题
提高了读取带有空白字符共享字符串表索引值的兼容性

性能优化
提高了应用带有自定义月份数字格式的速度
大幅提高了对于带有合并单元格工作表的处理速度

其他
Go Excelize 提供了支持 WebAssembly / Javascript 环境的 excelize-wasm NPM 包
Go Modules 依赖模块更新
单元测试与文档更新
优化内部变量与函数命名
包含简体中文、英语、法语、俄语、日语、韩语、阿拉伯语、德语和西班牙语的多国语言文档网站更新

联系客服

手机版

扫一扫进入手机版

返回顶部