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文件,其中包含我们定义的数据。

相关推荐
利威尔xu3 分钟前
Go IM 源码实战(2):WebSocket 握手 11 步,少 1 个参数连不上
后端·websocket·微服务·面试·golang
轻舟技术A30 分钟前
Rust 重写 Pi:会话启动耗时降 91%,就绪内存少 78%
开发语言·后端·rust
Jack N1 小时前
【Strapi 系列之五】前端怎么接?Next.js + Tailwind 拉取 Strapi 数据(含代码)
开发语言·前端·javascript·strapi
傲文博一1 小时前
MySQL 不开放外网端口,Mac 怎么连接?
后端
付威20231 小时前
Rust 重写 Pi:会话启动耗时降 91%,就绪内存少 78%
后端
绝望的蛋炒饭1 小时前
长会话的模型选型:缓存命中率如何决定真实成本
人工智能·后端·agent
用户80467718009751 小时前
Spring MVC Controller 返回值类型全解
后端
用户127653018141 小时前
把客服分流、询盘清洗、多平台改写做成 3 个 HTTP 接口,纯规则引擎也能跑
后端
程序员初一1 小时前
玩了这么多年服务器,那服务器管理工具哪个好用?
后端