之前寫過一篇導出cvs格式的,如果只是簡單導出完全能滿足需要。按時如果想要有復雜需求,如樣式定制、多個sheet之類的,就無法完成了。之后發現有人已經實現golang直接excel對excel的操作,這里分享一下。
地址:https://github.com/tealeg/xlsx
具體各類操作可以直接看里邊給出的示例或直接查看代碼,用法還是很簡單的。這里給出個簡單的測試示例:
package main import ( "fmt" "github.com/tealeg/xlsx" ) func test1() { var file *xlsx.File var sheet *xlsx.Sheet var row *xlsx.Row var cell *xlsx.Cell var err error file = xlsx.NewFile() sheet = file.AddSheet("Sheet1") row = sheet.AddRow() cell = row.AddCell() cell.Value = "000101" cell = row.AddCell() cell.Value = "中文" err = file.Save("MyXLSXFile.xlsx") if err != nil { fmt.Printf(err.Error()) } } func test2() { var file *xlsx.File var sheet *xlsx.Sheet var row *xlsx.Row var cell *xlsx.Cell var err error file, _ = xlsx.OpenFile("MyXLSXFile.xlsx") sheet = file.Sheet["Sheet1"] row = sheet.AddRow() cell = row.AddCell() cell.Value = "000101" cell = row.AddCell() cell.Value = "中文1" err = file.Save("MyXLSXFile1.xlsx") if err != nil { fmt.Printf(err.Error()) } } func main() { test1() test2() }