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

相关推荐
拾忆,想起1 天前
Dubbo超时问题排查与调优指南:从根因到解决方案
服务器·开发语言·网络·微服务·架构·php·dubbo
7ioik1 天前
什么是线程池?线程池的作用?线程池的四种创建方法?
java·开发语言·spring
晨非辰1 天前
数据结构排序系列指南:从O(n²)到O(n),计数排序如何实现线性时间复杂度
运维·数据结构·c++·人工智能·后端·深度学习·排序算法
寻星探路1 天前
JavaSE重点总结后篇
java·开发语言·算法
Charles_go1 天前
C#中级8、什么是缓存
开发语言·缓存·c#
松涛和鸣1 天前
14、C 语言进阶:函数指针、typedef、二级指针、const 指针
c语言·开发语言·算法·排序算法·学习方法
Filotimo_1 天前
Spring Boot 整合 JdbcTemplate(持久层)
java·spring boot·后端
智商低情商凑1 天前
Go学习之 - Goroutines和channels
开发语言·学习·golang
半桶水专家1 天前
Go 语言时间处理(time 包)详解
开发语言·后端·golang
编程点滴1 天前
Go 重试机制终极指南:基于 go-retry 打造可靠容错系统
开发语言·后端·golang