Go--生成excel表格,读取excel表格数据
先下载第三方依赖包:
go get -u github.com/xuri/excelize/v2
代码:
package main import ( "fmt" "github.com/xuri/excelize/v2" ) //生成excel表格 func touchExcel() { //开启新的文件 f := excelize.NewFile() //创建一个工作表 index, err := f.NewSheet("工作表名") if err != nil { fmt.Println("创建工作表失败:", err) } //设置默认的工作表 f.SetActiveSheet(index) //给单元格赋值 f.SetCellValue("工作表名", "A2", "hello") f.SetCellValue("工作表名", "B2", "100") //创建一个工作表 f.NewSheet("Sheet1") f.SetCellValue("Sheet1", "B2", "100") //保存路径 if err := f.SaveAs("test-excel/test2.xlsx"); err != nil { fmt.Println("保存文件失败:", err) } } //打开excel,读取数据 func readExcel() { f, err := excelize.OpenFile("test-excel/test2.xlsx") if err != nil { fmt.Println("打开excel文件失败") } //打开文件后要关闭 defer f.Close() //获取指定单元格的值 cell, err := f.GetCellValue("Sheet1", "B2") if err != nil { fmt.Println("获取数据失败:", err) return } fmt.Printf(cell) //获取 工作表名 上所有单元格的值 rows, err := f.GetRows("工作表名") if err != nil { fmt.Println("获取单元格失败:", err) return } //遍历数组 for i, row := range rows { if i == 0 { //表格第一行常为表头,单独拎出来 fmt.Println(row) //输出格式:[xxx xxx xxx] }else { fmt.Println(row[0],row[1]) //可用row[num]来获取单元格里的数据,方便后续使用 } } //遍历数组,for循环 for i := 0; i < len(rows); i++ { fmt.Println(rows[i]) //输出格式:[xxx xxx xxx] } } func main() { //touchExcel() readExcel() }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类