Excelize 是 Go 语言编写的用于操作电子表格办公文档的开源基础库,基于 ISO/IEC 29500 、ECMA-376 国际标准。可以使用它来读取、写入由 Microsoft Excel 、WPS 、Apache OpenOffice 、LibreOffice 等办公软件创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件的文档,并提供流式读写支持,用于处理包含大规模数据的工作簿。可应用于各类报表平台、云计算、边缘计算等系统。自 2016 年开源以来已成为云原生应用尤其是 Go 语言开发者在处理电子表格办公文档时的热门选择,正在被广泛应用于大型互联网公司、中小企业客户和初创公司。荣获 2022 年中国开源创新大赛一等奖、入选 2020 Gopher China - Go 领域明星开源项目 (GSP)、2018 年开源中国码云最有价值开源项目 GVP (Gitee Most Valuable Project)。
GitHub: github.com/xuri/excelize
Gitee: gitee.com/xurime/excelize
中文文档: xuri.me/excelize/zh-hans
2023 年 8 月 28 日,社区正式发布了 2.8.0 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化。下面是有关该版本更新内容的摘要,完整的更改列表可查看 changelog。
此版本中最显著的变化包括:
ErrTableNameLength
重命名为 ErrNameLength
PaneOptions
重命名为 Selection
Comment
中的 Runs
字段重命名为 Paragraph
Style
数据类型中的 Lang
字段ChartTitle
数据类型,使用 RichTextRun
类型代替DecimalPlaces
字段的数据类型为指针类型AddShape
函数的签名:将 func (f *File) AddShape(sheet, cell string, opts *Shape) error
改为 func (f *File) AddShape(sheet string, opts *Shape) error
ErrExistsTableName
和 ErrorFormControlValue
Options
数据类型中新增 ShortDatePattern
, LongDatePattern
, LongTimePattern
和 CultureInfo
选项,支持设置长短日期与时间格式代码,相关 issue #1199CultureName
类型枚举GetTables
与 DeleteTable
支持获取与删除表格,相关 issue #674 和 #1454GetStyle
支持获取样式定义,相关 issue #314, #1520 和 #1521GetPanes
函数,支持获取窗格和视图选区设置AddFormControl
、GetFormControls
和 DeleteFormControl
, 支持添加主要水平和垂直坐标轴标题,相关 issues #301 和 #1169AddChart
支持添加主要水平和垂直坐标轴标题,相关 issue #1553AddChart
支持添加次坐标轴,相关 issue #518AddChart
支持设置图表富文本标题与图表标题格式,相关 issue #1588AddShape
函数添加形状时,如果给定的形状类型不受支持,将返回异常错误GetPictures
支持读取带有单一单元格锚点位置的图片,相关 issue #1585NewConditionalStyle
支持创建带有数字格式与保护属性的条件格式样式,相关 issue #1610xlsxTabColor
数据类型,使用 xlsxColor
代替 xlsxTabColor
数据类型 1
deorth 2023-08-28 13:09:23 +08:00 via Android 1
建议等到 1.21.1 了再来宣传。首次入坑用着最新的 go 发现完全用不了体验很差
|
4
tangtang369 2023-08-28 14:22:21 +08:00
这个不支持 xls 最终还是用了 github 上面很老的一个库
|
5
ggvoking 2023-08-28 14:37:11 +08:00
能否支持下 sheet 跨文件复制,和修改 sheet 顺序。😂
|
6
bv 2023-08-28 16:21:51 +08:00
@tangtang369 糖糖是你吗?
|
7
tangtang369 2023-08-28 16:29:06 +08:00
@bv 是的 看来是在一个群过
|
8
w292614191 2023-08-28 16:46:12 +08:00
相比 apache poi 有什么优势吗?
|
9
micookie 2023-08-28 21:53:39 +08:00
@tangtang369 用的哪个库?
|
10
hzzhzzdogee 2023-08-28 22:29:43 +08:00 1
用过, 体验不错, 支持
|
11
ninjashixuan 2023-08-28 23:31:58 +08:00
啥时候 go 也有一个同样好用的 word 库就好了,Excel 这个就够可以了。
|
12
luxurioust OP Go 1.21.1 已发布,修复了 Go 1.21.0 下 Excelize 生成文档空白或损坏的问题,有需要的朋友可以升级。
|
13
daiv 2023-09-10 22:40:53 +08:00
等待 word 也来一波,
|