V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
luxurioust
V2EX  ›  Go 编程语言

Excelize 发布 2.2.0 版本, Go 语言 Excel 文档基础库

  •  
  •   luxurioust ·
    xuri · 2020-05-11 01:37:37 +08:00 · 1935 次点击
    这是一个创建于 1438 天前的主题,其中的信息可能已经有所发展或是发生改变。

    github.com/360EntSecGroup-Skylar/excelize

    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

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

    有关更改的摘要,请参阅 Release Notes。完整的更改列表可查看 change log

    Release Notes

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

    新增功能

    • 下列 API 的参数将使用工作表索引代替工作表 ID: GetSheetNameGetSheetIndexGetActiveSheetIndexSetActiveSheet, 相关 #485
    • 新增 GetSheetList API,获取与工作簿内顺序保持一致的工作表列表
    • 新增 AddChartSheet API,支持创建图表工作表,相关 issue #451
    • 新增 UnsetConditionalFormat API,支持从工作表中删除条件格式,相关 issue #571
    • 新增 DeleteDataValidation API,支持从工作表中删数据验证设置,相关 issue #348
    • 新增 SetCellRichText API,支持设置单元格换行与富文本样式,相关 issue #172
    • 新增函数 InsertPageBreakRemovePageBreak,支持从工作表中插入或删除换页符,相关 issue #492
    • 函数 AddPivotTable API 更改,支持设置数据透视表的数据标签与汇总函数,相关 issue #582
    • 函数 AddPivotTable 支持设置数据透视表的筛选项,相关 issue #598
    • 函数 AddPivotTable 支持数据透视表中的值、行或筛选项为空
    • 导出函数 ExcelDateToTime,提供将 Excel 时间格式转换为 time.Time 数据类型
    • 导出 Style 结构体,允许通过结构体指针或 JSON 字符创建样式,相关 issue #470

    问题修复

    • 修复当使用 SetConditionalFormat 为单元格设置条件格式时,>=<= 运算符不生效的问题, 解决 issue #608
    • 修复特定情况下通过 StreamWriter 进行流式写入导致工作表损坏的问题,解决 issue #576
    • 提高公式中的特殊字符兼容性,解决 issue #578
    • 修复通过 DuplicateRowTo 进行复制行时,合并单元格未被复制的问题,解决 issue #586
    • 修复特定情况下创建条件格式后,相邻单元格边框样式丢失问题,解决 issue #200
    • 修复通过 GetComments 获取批注式部分批注数据无法获取问题,解决 issue #345
    • 修复特定情况下通过 GetCellValue 获取单元格值错误问题,解决 issue #602
    • 修复因某些情况下文档内部行内单元格缺少 r 属性而导致的 GetCellValue 错误地返回空值问题
    • 兼容单元格样式中的空值与默认值,修复部分情况下通过电子表格软件打开生成文档修改样式失效的问题,解决 issue #628

    性能提升

    • 优化内部函数 getRowHeight,降低内存占用

    其他

    • 移除工作表计算属性使部分电子表格应用程序(如:金山 WPS™ Office )打开生成的文档进行重新计算公式
    • 完善单元测试中的错误处理
    • 包含简体中文、英语、法语、俄语、日语和韩语的多国语言文档网站更新
    • 技术交流群

    DingTalk Group ID: 30047129

    QQ Group ID: 207895940

    Excel 技术交流群
    8 条回复    2020-06-15 13:15:23 +08:00
    hellos
        1
    hellos  
       2020-05-11 08:07:50 +08:00 via Android
    支持。
    coderabbit
        2
    coderabbit  
       2020-05-11 08:30:22 +08:00 via Android
    支持在用 2.0.2 版本 再往上就不能在升级了!获取数据又变得改好多代码。
    itstudying
        3
    itstudying  
       2020-05-11 09:06:48 +08:00
    啥时候能支持 xls 文件。。
    kios
        4
    kios  
       2020-05-11 09:14:25 +08:00
    很好用
    BlackBerry999
        5
    BlackBerry999  
       2020-05-11 09:53:35 +08:00
    有没有 doc pdf ppt 的基础库?
    neoblackcap
        6
    neoblackcap  
       2020-05-11 14:18:29 +08:00
    用过,的确不错
    wudalang123
        7
    wudalang123  
       2020-05-11 15:06:32 +08:00
    干嘛用的 ? 谁能举出一个具体落地实例来?
    chengxiao
        8
    chengxiao  
       2020-06-15 13:15:23 +08:00
    支持 什么时候能支持列读取呢?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2862 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 00:24 · PVG 08:24 · LAX 17:24 · JFK 20:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.