导入包
首先,安装github.com/tealeg/xlsx库。可以通过以下命令在终端中安装:
go get github.com/tealeg/xlsx
创建文件
指定好文件的名字
fileName := "D:\\a.xlsx"
再判断文件是否存在(这一步通常用于清空原来写入到excel的内容)
// 检查文件是否存在
_, err1 := os.Stat(fileName)
// 如果文件存在,删除文件
if err1 == nil {
err := os.Remove(fileName)
if err != nil {
log.Fatalf("删除文件失败: %v", err)
}
}
创建一个新的 Excel 文件
file := xlsx.NewFile()
添加表格
添加一个 Sheet
// 添加一个 Sheet
sheet, err := file.AddSheet("Sheet1")
if err != nil {
fmt.Printf("Error creating sheet: %s\n", err)
return
}
添加行
表格中添加一行
//表格中添加一行
row := sheet.AddRow()
添加单元格
行中添加单元格并将值写入
cell := row.AddCell()
cell.SetValue(value)
保存文件
将文件保存到文件路径所在的位置
// 将 Excel 文件保存到本地
if err := file.Save(fileName); err != nil {
log.Fatal(err)
}
封装
将上述内容封装成一个方法
扫描二维码关注公众号,回复:
17514222 查看本文章

package main
import (
"fmt"
"github.com/tealeg/xlsx"
"log"
"os"
)
func main() {
fileName := "D:\\a.xlsx"
// 检查文件是否存在
_, err1 := os.Stat(fileName)
// 如果文件存在,删除文件
if err1 == nil {
err := os.Remove(fileName)
if err != nil {
log.Fatalf("删除文件失败: %v", err)
}
}
// 创建一个新的 Excel 文件
file := xlsx.NewFile()
// 添加一个 Sheet
sheet, err := file.AddSheet("Sheet1")
if err != nil {
fmt.Printf("Error creating sheet: %s\n", err)
return
}
// 写入数据到第一行的每一列
data := []string{
"Number", "time", "CPU/s"}
// 添加一行
row := sheet.AddRow()
//写入数据到第一行的每一列
for _, value := range data {
cell := row.AddCell()
cell.SetValue(value)
}
// 将 Excel 文件保存到本地
if err := file.Save(fileName); err != nil {
log.Fatal(err)
}
//添加一行到表格中
newRow := sheet.AddRow()
//当前的行依次添加单元格再把值放进去
newRow.AddCell().SetValue("NO:1")
newRow.AddCell().SetValue("2024-04-20 20:26:32")
newRow.AddCell().SetValue("168s")
// 最后将Excel文件保存到本地
if err := file.Save(fileName); err != nil {
log.Fatal(err)
}
}