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

相关推荐
jyOverQ6 分钟前
RabbitMQ 消息积压怎么办?Prefetch、消费者并发与扩容
分布式·后端·rabbitmq
2601_962071575 小时前
【Java报错已解决】org.springframework.beans.factory.BeanCreationException
java·开发语言
淡海水6 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing
CS_Zero7 小时前
C语言sizeof是函数吗?
c语言·开发语言
东风破_7 小时前
从跨域到 WebSocket:前端跨域方案、SSE 与双向实时通信详解
前端·后端
-今昭-8 小时前
《V2V 迁移实战:将 VMware 虚拟机转为 OpenStack 可用 Glance qcow2 镜像》
开发语言·python
行百里er9 小时前
Gateway 上别硬塞 MVC:DeferredImportSelector 看菜下锅
spring boot·后端·开源
名字还没想好☜9 小时前
Java 遍历时删元素抛 ConcurrentModificationException:fail-fast 原理与三种正确删法
后端
IT_陈寒10 小时前
React Hooks闭包陷阱差点让我加班到凌晨
前端·人工智能·后端
黑马程序员毕设10 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设