[go] CSV 파일의 레코드 처리

고(Go) 언어는 csv 라이브러리를 이용하여 CSV 파일의 레코드를 처리하는 데 쉽고 효율적인 방법을 제공합니다. 이 블로그 포스트에서는 고를 사용하여 CSV 파일을 읽고 쓰는 방법에 대해 알아보겠습니다.

CSV 파일 읽기

csv 라이브러리를 사용하여 CSV 파일에서 레코드를 읽는 예제 코드는 다음과 같습니다.

package main

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

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

	reader := csv.NewReader(file)
	records, err := reader.ReadAll()
	if err != nil {
		panic(err)
	}
	for _, row := range records {
		fmt.Println(row)
	}
}

위 코드는 data.csv 파일을 열고 각 레코드를 읽어서 표준 출력에 출력하는 간단한 예제입니다.

CSV 파일 쓰기

CSV 파일에 레코드를 쓰는 방법은 다음과 같습니다.

package main

import (
	"encoding/csv"
	"os"
)

func main() {
	records := [][]string{
		{"Name", "Age", "City"},
		{"Alice", "30", "New York"},
		{"Bob", "25", "Los Angeles"},
		{"Carol", "35", "Chicago"},
	}

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

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

	for _, record := range records {
		err := writer.Write(record)
		if err != nil {
			panic(err)
		}
	}
}

위 코드는 output.csv 파일에 레코드를 쓰는 예제입니다.

고의 csv 라이브러리를 사용하면 CSV 파일의 레코드를 쉽게 읽고 쓸 수 있으며, 이를 통해 데이터 처리 작업을 효율적으로 수행할 수 있습니다.

참고 문헌: