[go] Go 언어로 CSV 파일 읽기/쓰기

Go 언어에서 CSV 파일을 읽고 쓰는 것은 매우 간단하고 효율적입니다. 이번에는 Go 언어로 CSV 파일을 읽어오는 방법과 CSV 파일을 쓰는 방법에 대해 알아보겠습니다.

CSV 파일 읽기

encoding/csv 패키지를 사용하여 CSV 파일을 읽어올 수 있습니다. 아래는 간단한 예제 코드입니다.

package main

import (
    "encoding/csv"
    "os"
    "log"
)

func main() {
    file, err := os.Open("data.csv")
    if err != nil {
        log.Fatal(err)
    }
    defer file.Close()

    reader := csv.NewReader(file)
    records, err := reader.ReadAll()
    if err != nil {
        log.Fatal(err)
    }

    for _, row := range records {
        for _, col := range row {
            fmt.Print(col, " ")
        }
        fmt.Println()
    }
}

위 코드는 data.csv 파일을 읽어와서 내용을 출력하는 예제입니다.

CSV 파일 쓰기

CSV 파일을 쓰기 위해서도 encoding/csv 패키지를 사용합니다. 다음은 간단한 예제 코드입니다.

package main

import (
    "encoding/csv"
    "os"
)

func main() {
    data := [][]string{
        {"Name", "Age", "Email"},
        {"Alice", "25", "alice@example.com"},
        {"Bob", "30", "bob@example.com"},
    }

    file, err := os.Create("output.csv")
    if err != nil {
        log.Fatal(err)
    }
    defer file.Close()

    writer := csv.NewWriter(file)
    defer writer.Flush()

    for _, row := range data {
        err := writer.Write(row)
        if err != nil {
            log.Fatal(err)
        }
    }
}

위 코드는 데이터를 CSV 파일로 쓰는 간단한 예제입니다.

Go 언어를 활용하여 CSV 파일을 읽고 쓰는 방법에 대해 간단히 살펴보았습니다. 관련 자세한 내용은 공식 문서 를 참고하세요.