以前写过一篇导出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()
}