golang创建Excel表格
使用的库是excelize
地址:https://github.com/360EntSecGroup-Skylar/excelize
代码演示
package main
import (
"fmt"
"github.com/360EntSecGroup-Skylar/excelize/v2"
)
func main() {
f := excelize.NewFile()
// 选择默认表 Sheet1
streamWriter, err := f.NewStreamWriter("Sheet1")
if err != nil {
fmt.Println(err)
return
}
// 表头
excelHeader := []interface{}{
excelize.Cell{Value: "年龄"},
excelize.Cell{Value: "名字"},
excelize.Cell{Value: "生日"},
excelize.Cell{Value: "国籍"},
}
// 生成CellName 比如 A1
headerCellName, err := excelize.CoordinatesToCellName(1, 1)
if err != nil {
fmt.Println(err)
return
}
// 写表头
if err := streamWriter.SetRow(headerCellName, excelHeader); err != nil {
fmt.Println(err)
return
}
row := []interface{}{
"45",
"名字1",
"2023-12-12",
"中国",
}
//生成CellName 比如 A2
cell, err := excelize.CoordinatesToCellName(1, 2)
if err != nil {
fmt.Println(err)
return
}
if err := streamWriter.SetRow(cell, row); err != nil {
fmt.Println(err)
return
}
//
if err := streamWriter.Flush(); err != nil {
fmt.Println(err)
return
}
// 保存文件
if err := f.SaveAs("sheet1.xlsx"); err != nil {
fmt.Println(err)
return
}
fmt.Println("保存成功")
}
版权声明
由 durban创作并维护的 小绒毛的足迹博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。
本文首发于 博客( https://www.xiaorongmao.com ),版权所有,侵权必究。