首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Go中同时写入两个不同的csv文件?

在Go语言中,可以使用encoding/csv包来处理CSV文件的读写操作。要同时写入两个不同的CSV文件,可以按照以下步骤进行:

  1. 导入encoding/csv包和os包:
代码语言:txt
复制
import (
    "encoding/csv"
    "os"
)
  1. 创建两个文件对象,分别用于打开两个不同的CSV文件:
代码语言:txt
复制
file1, err := os.Create("file1.csv")
if err != nil {
    panic(err)
}
defer file1.Close()

file2, err := os.Create("file2.csv")
if err != nil {
    panic(err)
}
defer file2.Close()
  1. 创建两个CSV写入器,分别与两个文件对象关联:
代码语言:txt
复制
writer1 := csv.NewWriter(file1)
defer writer1.Flush()

writer2 := csv.NewWriter(file2)
defer writer2.Flush()
  1. 准备要写入的数据,以二维数组的形式表示:
代码语言:txt
复制
data1 := [][]string{
    {"1", "John", "Doe"},
    {"2", "Jane", "Smith"},
}

data2 := [][]string{
    {"A", "Apple"},
    {"B", "Banana"},
}
  1. 使用CSV写入器将数据写入到对应的文件中:
代码语言:txt
复制
for _, row := range data1 {
    err := writer1.Write(row)
    if err != nil {
        panic(err)
    }
}

for _, row := range data2 {
    err := writer2.Write(row)
    if err != nil {
        panic(err)
    }
}
  1. 最后,调用Flush方法确保所有数据都被写入文件:
代码语言:txt
复制
writer1.Flush()
writer2.Flush()

完整的示例代码如下:

代码语言:txt
复制
package main

import (
    "encoding/csv"
    "os"
)

func main() {
    file1, err := os.Create("file1.csv")
    if err != nil {
        panic(err)
    }
    defer file1.Close()

    file2, err := os.Create("file2.csv")
    if err != nil {
        panic(err)
    }
    defer file2.Close()

    writer1 := csv.NewWriter(file1)
    defer writer1.Flush()

    writer2 := csv.NewWriter(file2)
    defer writer2.Flush()

    data1 := [][]string{
        {"1", "John", "Doe"},
        {"2", "Jane", "Smith"},
    }

    data2 := [][]string{
        {"A", "Apple"},
        {"B", "Banana"},
    }

    for _, row := range data1 {
        err := writer1.Write(row)
        if err != nil {
            panic(err)
        }
    }

    for _, row := range data2 {
        err := writer2.Write(row)
        if err != nil {
            panic(err)
        }
    }

    writer1.Flush()
    writer2.Flush()
}

这样,就可以同时将数据写入到两个不同的CSV文件中了。请注意,示例代码中的文件名为"file1.csv"和"file2.csv",你可以根据实际需求修改文件名和路径。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券