前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >组件分享之后端组件——在Golang中快速读取和创建Excel

组件分享之后端组件——在Golang中快速读取和创建Excel

作者头像
cn華少
发布2022-04-02 13:15:01
1.2K0
发布2022-04-02 13:15:01
举报
文章被收录于专栏:IT综合技术分享IT综合技术分享

组件分享之后端组件——在Golang中快速读取和创建Excel

背景

近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。欢迎大家进行持续关注。

组件基本信息

内容

本节我们分享的是基于Golang语言的Excel文件读写组件excelize

Excelize是一个用纯Go编写的库,提供了一组函数,允许你写入和读取XLAM / XLSM / XLSX / XLTM / XLTX文件。支持读取和写入由Microsoft Excel™2007及更高版本生成的电子表格文档。高兼容性支持复杂组件,提供流API,用于生成或从数据量大的工作表读取数据。此库需要Go 1.15或更高版本。完整的API文档可以通过go内置的文档工具查看,也可以在线查看go.dev和docs参考。

具体使用方式如下:

1、安装基础包

代码语言:javascript
复制
go get github.com/xuri/excelize/v2

2、创建一个excel并存储内容

代码语言:javascript
复制
package main

import (
    "fmt"

    "github.com/xuri/excelize/v2"
)

func main() {
    f := excelize.NewFile()
    // 创建一个新的 sheet.
    index := f.NewSheet("Sheet2")
    // 设置单元格的值
    f.SetCellValue("Sheet2", "A2", "Hello world.")
    f.SetCellValue("Sheet1", "B2", 100)
    // 设置工作簿的活动表。
    f.SetActiveSheet(index)
    // 保存文件
    if err := f.SaveAs("Book1.xlsx"); err != nil {
        fmt.Println(err)
    }
}

这样我们就完成了一个简单的excel文件创建和内容存储,是不是很简单,在我们日常导出一些数据时这个方式是非常实用的一个方法。

3、如果想要读取excel,具体案例如下:

代码语言:javascript
复制
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()
    }
}

这样就可以有效读取excel中的内容了,在日常进行导入数据时进行excel解析和处理很方便。

本节我们就分享到这里,想要了解更多好用的golang组件请持续关注我,有迫切需要的组件也可以在文章评论中进行留言,我将根据留言进行一些特别需要的组件分享内容。

本文声明:

知识共享许可协议

本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022.03.27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 组件分享之后端组件——在Golang中快速读取和创建Excel
    • 背景
      • 组件基本信息
        • 内容
          • 1、安装基础包
          • 2、创建一个excel并存储内容
          • 3、如果想要读取excel,具体案例如下:
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档