Golang Excelize 2.3.1 发布——支持密码保护电子表格文件的Go库

Golang Excelize 2.3.1 发布——支持密码保护电子表格文件的Go库 github.com/360EntSecGroup-Skylar/excelize

Excelize 是一个用纯 Go 语言编写的库,提供了一系列函数,允许您读写 XLSX / XLSM / XLTM 文件。支持读写由 Microsoft Excel™ 2007 及更高版本生成的电子表格文档。通过高兼容性支持复杂组件,并提供了流式 API,用于从包含大量数据的工作表中生成或读取数据。

GitHub: github.com/xuri/excelize

我们很高兴地宣布版本 2.3.1 的发布。本次更新包含了一些新的功能领域和大量的错误修复。

变更摘要可在发布说明中查看。完整的变更列表可在更新日志中找到。

发布说明

本次发布中最值得注意的变更有:

重要特性

  • 支持通过 ECMA-376 文档标准加密打开受密码保护的电子表格,相关议题 #199
  • 为工作表添加检查和限制
  • 扩展数据透视表功能:支持为数据透视表设置表头、样式和表格选项
  • 安全漏洞和补丁

提升兼容性

  • 兼容 Go 1.15,修复了 Windows 上的单元测试失败和潜在的竞态条件,相关议题 #689
  • 默认行高与 Apache OpenOffice 和金山 WPS™ 兼容
  • 改进了拼音提示和工作表标签颜色的兼容性

错误修复

  • 修复在某些情况下 RemoveRow 切片越界导致 panic 的问题,解决 #686
  • 修复流式写入器生成损坏文件的问题
  • 修复添加图片时缩放比例不生效的问题,解决 #691

其他

  • 单元测试更新和拼写错误修正
  • 多语言文档网站(英语、法语、俄语、中文、日语和韩语)已更新
  • 欢迎加入Slack频道与社区其他成员交流

更多关于Golang Excelize 2.3.1 发布——支持密码保护电子表格文件的Go库的实战教程也可以访问 https://www.itying.com/category-94-b0.html

1 回复

更多关于Golang Excelize 2.3.1 发布——支持密码保护电子表格文件的Go库的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


Excelize 2.3.1 的发布确实是一个重要的更新,特别是新增了对密码保护电子表格文件的支持。这个功能通过 ECMA-376 标准加密实现,使得 Go 开发者能够处理受保护的 Excel 文件,这在处理敏感数据时非常有用。以下是一个简单的示例代码,展示如何使用新版本打开一个受密码保护的 XLSX 文件:

package main

import (
    "fmt"
    "github.com/xuri/excelize/v2"
)

func main() {
    // 打开受密码保护的电子表格文件
    f, err := excelize.OpenFile("protected.xlsx", excelize.Options{Password: "yourpassword"})
    if err != nil {
        fmt.Println(err)
        return
    }
    defer func() {
        if err := f.Close(); err != nil {
            fmt.Println(err)
        }
    }()
    
    // 读取工作表数据
    cell, err := f.GetCellValue("Sheet1", "A1")
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Println(cell)
}

此外,新增的工作表检查和限制功能可以帮助开发者更好地控制数据输入,而数据透视表的扩展支持(如设置表头和样式)则提升了报表生成的灵活性。错误修复方面,解决了 RemoveRow 可能导致的 panic 问题,这增强了库的稳定性。兼容性改进确保在 Go 1.15 及更高版本上运行更顺畅,特别是在 Windows 环境下。总体来看,这个版本进一步巩固了 Excelize 作为 Go 语言处理 Excel 文件的强大工具的地位。

回到顶部