網站首頁 編程語言 正文
前言
在開發中一些需求需要通過程序操作excel
文檔,例如導出excel
、導入excel
、向excel
文檔中插入圖片、表格和圖表等信息,使用Excelize
就可以方便的滿足上述需求,本文主要總結一下Excelize的使用,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教。
Excelize簡介
Excelize是Go語言編寫的一個用來操作Office Excel文檔類庫,可以使用它來讀取、寫入Excel文件,還支持向Excel中插入圖片、圖標、以及工具函數等,功能相對比較齊全,對于基本的需求完全夠用,廢話不多說,直接開干。
安裝
go get github.com/xuri/excelize # 如果你是通過Go Module管理的包,執行以下安裝 go get github.com/xuri/excelize/v2
導出 Excel 文檔
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文檔
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中插入圖片、圖標、以及工具函數等,功能相對比較齊全,對于基本的需求完全夠用。
網上有一個詳細介紹excelize使用的中文文檔,總結挺全面的,地址:xuri.me/excelize/zh…
原文鏈接:https://juejin.cn/post/7150436282575880200
相關推薦
- 2022-11-09 golang包循環引用的幾種解決方案總結_Golang
- 2023-01-28 詳解如何利用C#實現漢字轉拼音功能_C#教程
- 2022-04-21 C#實現chart控件動態曲線繪制_C#教程
- 2022-09-10 Python遞歸實現猴子吃桃問題及解析_python
- 2022-04-23 arguments獲取當前所在函數
- 2024-03-06 PageHelper插件的使用
- 2022-10-06 Python3中常見配置文件寫法匯總_python
- 2022-06-06 Postgresql split_part()函數,根據符號切割字符串
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支