Excel读和写的golang库
下载依赖
go get github.com/xuri/excelize/v2新建表格
package main
import (
"fmt"
"github.com/xuri/excelize/v2"
)
func main() {
f := excelize.NewFile(excelize.Options{
MaxCalcIterations: 0,
Password: "",
RawCellValue: false,
UnzipSizeLimit: 0,
UnzipXMLSizeLimit: 0,
ShortDatePattern: "",
LongDatePattern: "",
LongTimePattern: "",
CultureInfo: 0,
})
f.NewSheet("Sheet2")
f.NewSheet("Sheet3")
f.SetCellDefault("Sheet1", "A1", "test1")
f.Close()
f.SaveAs("1.xlsx")
}读取表格
二维数组
f, _ := excelize.OpenFile("2.xlsx", excelize.Options{
Password: "123",
})
defer f.Close()
rows, _ := f.GetRows("sheet2")
fmt.Println("行数", len(rows))
fmt.Println("列数", len(rows[0]))单元格
f, _ := excelize.OpenFile("2.xlsx", excelize.Options{
Password: "123",
})
defer f.Close()
fmt.Println(f.GetCellValue("Sheet2", "A1"))
f.SetCellDefault("Sheet2", "A2", "new value")修饰
f, _ := excelize.OpenFile("2.xlsx", excelize.Options{
Password: "123",
})
defer f.Close()
f.SetColWidth("Sheet2", "A", "A", 80)
f.SetRowHeight("Sheet2", 1, 40)
styleId, _ := f.NewStyle(&excelize.Style{
Border: nil,
Fill: excelize.Fill{},
Font: &excelize.Font{
Bold: true,
Size: 35,
},
Alignment: nil,
Protection: nil,
NumFmt: 0,
DecimalPlaces: nil,
CustomNumFmt: nil,
NegRed: false,
})
f.SetCellStyle("Sheet2", "A1", "C3", styleId)
f.SaveAs("1.xlsx")