以前寫過一篇導出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()
}