這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
之前寫過一篇匯出cvs格式的,如果只是簡單匯出完全能滿足需要。按時如果想要有複雜需求,如樣式定製、多個sheet之類的,就無法完成了。之後發現有人已經實現golang直接excel對excel的操作,這裡分享一下。
地址:https://github.com/tealeg/xlsx
具體各類操作可以直接看裡邊給出的樣本或直接查看代碼,用法還是很簡單的。這裡給出個簡單的測試樣本:
package mainimport ("fmt""github.com/tealeg/xlsx")func test1() {var file *xlsx.Filevar sheet *xlsx.Sheetvar row *xlsx.Rowvar cell *xlsx.Cellvar err errorfile = 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.Filevar sheet *xlsx.Sheetvar row *xlsx.Rowvar cell *xlsx.Cellvar err errorfile, _ = 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()}