Golang
主页 > 脚本 > Golang >

Go语言操作Excel利器之excelize类库的介绍

2022-10-08 | 佚名 | 点击:

在开发中一些需求需要通过程序操作excel文档,例如导出excel、导入excel、向excel文档中插入图片、表格和图表等信息,使用Excelize就可以方便的满足上述需求,本文主要总结一下Excelize的使用,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教。

Excelize简介

Excelize是Go语言编写的一个用来操作Office Excel文档类库,可以使用它来读取、写入Excel文件,还支持向Excel中插入图片、图标、以及工具函数等,功能相对比较齐全,对于基本的需求完全够用,废话不多说,直接开干。

安装

1

2

3

go get github.com/xuri/excelize

# 如果你是通过Go Module管理的包,执行以下安装

go get github.com/xuri/excelize/v2

导出 Excel 文档

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

package main

 

import (

    "fmt"

 

    "github.com/xuri/excelize/v2"

)

 

func main() {

    f := excelize.NewFile()

    // 创建一个工作表

    index := f.NewSheet("Sheet2")

    // 设置单元格的值

    f.SetCellValue("Sheet2", "A2", "Hello world.")

    f.SetCellValue("Sheet1", "B2", 100)

    // 设置工作簿的默认工作表

    f.SetActiveSheet(index)

    // 根据指定路径保存文件

    if err := f.SaveAs("export.xlsx"); err != nil {

        fmt.Println(err)

    }

}

读取Excel文档

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

package main

 

import (

    "fmt"

 

    "github.com/xuri/excelize/v2"

)

 

func main() {

    f, err := excelize.OpenFile("Book1.xlsx")

    if err != nil {

        fmt.Println(err)

        return

    }

    defer func() {

        if err := f.Close(); err != nil {

            fmt.Println(err)

        }

    }()

    // 获取工作表中指定单元格的值

    cell, err := f.GetCellValue("Sheet1", "B2")

    if err != nil {

        fmt.Println(err)

        return

    }

    fmt.Println(cell)

    // 获取 Sheet1 上所有单元格

    rows, err := f.GetRows("Sheet1")

    if err != nil {

        fmt.Println(err)

        return

    }

    for _, row := range rows {

        for _, colCell := range row {

            fmt.Print(colCell, "\t")

        }

        fmt.Println()

    }

}

小结

在本文中,简单介绍了 Go通过 Excelize操作Excel 的导入、导出的使用方式,Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,可以使用它来读取、写入Excel文档,还支持向Excel中插入图片、图标、以及工具函数等,功能相对比较齐全,对于基本的需求完全够用。

原文链接:https://juejin.cn/post/7150436282575880200
相关文章
最新更新