Go語(yǔ)言操作Excel利器之excelize類庫(kù)詳解
前言
在開(kāi)發(fā)中一些需求需要通過(guò)程序操作excel
文檔,例如導(dǎo)出excel
、導(dǎo)入excel
、向excel
文檔中插入圖片、表格和圖表等信息,使用Excelize
就可以方便的滿足上述需求,本文主要總結(jié)一下Excelize的使用,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
Excelize簡(jiǎn)介
Excelize是Go語(yǔ)言編寫(xiě)的一個(gè)用來(lái)操作Office Excel文檔類庫(kù),可以使用它來(lái)讀取、寫(xiě)入Excel文件,還支持向Excel中插入圖片、圖標(biāo)、以及工具函數(shù)等,功能相對(duì)比較齊全,對(duì)于基本的需求完全夠用,廢話不多說(shuō),直接開(kāi)干。
安裝
go get github.com/xuri/excelize # 如果你是通過(guò)Go Module管理的包,執(zhí)行以下安裝 go get github.com/xuri/excelize/v2
導(dǎo)出 Excel 文檔
package main import ( "fmt" "github.com/xuri/excelize/v2" ) func main() { f := excelize.NewFile() // 創(chuàng)建一個(gè)工作表 index := f.NewSheet("Sheet2") // 設(shè)置單元格的值 f.SetCellValue("Sheet2", "A2", "Hello world.") f.SetCellValue("Sheet1", "B2", 100) // 設(shè)置工作簿的默認(rèn)工作表 f.SetActiveSheet(index) // 根據(jù)指定路徑保存文件 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() } }
小結(jié)
在本文中,簡(jiǎn)單介紹了 Go通過(guò) Excelize操作Excel 的導(dǎo)入、導(dǎo)出的使用方式,Excelize 是 Go 語(yǔ)言編寫(xiě)的用于操作 Office Excel 文檔基礎(chǔ)庫(kù),可以使用它來(lái)讀取、寫(xiě)入Excel文檔,還支持向Excel中插入圖片、圖標(biāo)、以及工具函數(shù)等,功能相對(duì)比較齊全,對(duì)于基本的需求完全夠用。
網(wǎng)上有一個(gè)詳細(xì)介紹excelize使用的中文文檔,總結(jié)挺全面的,地址:xuri.me/excelize/zh…
到此這篇關(guān)于Go語(yǔ)言操作Excel利器之excelize類庫(kù)的文章就介紹到這了,更多相關(guān)Go操作Excel之excelize內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang實(shí)現(xiàn)四層負(fù)載均衡的示例代碼
做開(kāi)發(fā)的同學(xué)應(yīng)該經(jīng)常聽(tīng)到過(guò)負(fù)載均衡的概念,今天我們就來(lái)實(shí)現(xiàn)一個(gè)乞丐版的四層負(fù)載均衡,并用它對(duì)mysql進(jìn)行負(fù)載均衡測(cè)試,感興趣的可以了解一下2023-07-07基于HLS創(chuàng)建Golang視頻流服務(wù)器的優(yōu)缺點(diǎn)
HLS 是 HTTP Live Streaming 的縮寫(xiě),是蘋(píng)果開(kāi)發(fā)的一種基于 HTTP 的自適應(yīng)比特率流媒體傳輸協(xié)議。這篇文章主要介紹了基于 HLS 創(chuàng)建 Golang 視頻流服務(wù)器,需要的朋友可以參考下2021-08-08gRPC的發(fā)布訂閱模式及REST接口和超時(shí)控制
這篇文章主要為大家介紹了gRPC的發(fā)布訂閱模式及REST接口和超時(shí)控制,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06MacOS下本地golang環(huán)境搭建詳細(xì)教程
這篇文章主要介紹了MacOS下本地golang環(huán)境搭建詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09Golang執(zhí)行g(shù)o get私有庫(kù)提示"410 Gone" 的問(wèn)題及解決辦法
這篇文章主要介紹了Golang執(zhí)行g(shù)o get私有庫(kù)提示”410 Gone“ 解決辦法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-02-02Golang?內(nèi)存模型The?Go?Memory?Model
這篇文章主要為大家介紹了Golang?內(nèi)存模型The?Go?Memory?Model實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11從Context到go設(shè)計(jì)理念輕松上手教程
這篇文章主要為大家介紹了從Context到go設(shè)計(jì)理念輕松上手教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09Go語(yǔ)言實(shí)現(xiàn)IP段范圍校驗(yàn)示例
這篇文章主要介紹了Go語(yǔ)言實(shí)現(xiàn)IP段范圍校驗(yàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09golang 函數(shù)以及函數(shù)和方法的詳解及區(qū)別
這篇文章主要介紹了golang 函數(shù)以及函數(shù)和方法的區(qū)別的相關(guān)資料,需要的朋友可以參考下2017-05-05