golang如何生成csv文件

在Go语言中,可以使用标准库中的"encoding/csv"包来生成CSV文件。下面是一个简单的示例代码,演示如何使用Go生成CSV文件:

go 复制代码
package main

import (
 "encoding/csv"
 "os"
)

func main() {
 // 创建一个新的CSV文件
 file, err := os.Create("data.csv")
 if err != nil {
 panic(err)
 }
 defer file.Close()

 // 创建一个新的CSV写入器
 writer := csv.NewWriter(file)
 defer writer.Flush()

 // 写入CSV数据
 data := [][]string{
 {"Name", "Age", "Gender"},
 {"John", "25", "Male"},
 {"Alice", "30", "Female"},
 {"Bob", "35", "Male"},
 }
 for _, row := range data {
 err := writer.Write(row)
 if err != nil {
 panic(err)
 }
 }
}

在上面的代码中,我们首先使用os.Create函数创建一个新的CSV文件。然后,我们使用csv.NewWriter函数创建一个新的CSV写入器,并将其与文件关联。接下来,我们定义了要写入CSV文件的数据,即一个二维字符串切片。最后,我们使用writer.Write函数将每一行数据写入CSV文件。最后,我们使用writer.Flush函数确保所有数据都被写入文件并刷新缓存。

运行上述代码后,将在当前目录下生成一个名为"data.csv"的CSV文件,其中包含我们定义的数据。

相关推荐
用户34232323763175 分钟前
定时器与 PWM 输出详解
后端
Jason_chen1 小时前
Linux 6.2 CAN/CANFD机制详解
后端
Apifox2 小时前
Apifox 6 月更新|Apifox CLI 全面升级、导入导出优化、OAuth 2.0 支持自动刷新令牌
前端·后端·测试
悟空瞎说2 小时前
NestJS 接口设计避坑:摒弃万能用户更新接口,落地单一职责与最小权限原则
后端·nestjs
smallyoung2 小时前
Spring AI 2.0 VectorStore实战:从原理到RAG落地
人工智能·后端
jiayou642 小时前
KingbaseES 表级与列级加密完全指南
数据库·后端
青丘2 小时前
Spring AI整合Milvus向量数据库实战
后端
古茗前端团队4 小时前
急招!前端|测试|后端|产品(名额多,速来)
前端·后端·架构
喵个咪5 小时前
Go-Wind HTTP 服务器从入门到精通
后端·http·go