[go] CSV 파일의 열 구분자 처리
CSV 파일을 처리할 때, 종종 열 구분자를 어떻게 처리해야 하는지에 대한 문제가 발생할 수 있습니다. 이 문제를 해결하기 위해 Go 언어에서는 여러 가지 방법을 제공합니다. 여기서는 Go 언어를 사용하여 CSV 파일의 열 구분자를 처리하는 방법에 대해 알아보겠습니다.
1. CSV 파일 읽기
package main
import (
"encoding/csv"
"fmt"
"os"
)
func main() {
file, err := os.Open("file.csv")
if err != nil {
panic(err)
}
defer file.Close()
reader := csv.NewReader(file)
reader.Comma = ';'
lines, err := reader.ReadAll()
if err != nil {
panic(err)
}
for _, line := range lines {
fmt.Println(line)
}
}
위의 예제 코드에서는 encoding/csv
패키지를 사용하여 CSV 파일을 읽고, reader.Comma
를 통해 열 구분자를 설정하고 있습니다. 기본적으로 CSV 파일의 열 구분자는 쉼표(,)로 되어 있지만, 다른 문자(세미콜론 등)를 열 구분자로 사용할 경우에는 reader.Comma
를 통해 해당 문자를 설정해주어야 합니다.
2. CSV 파일 쓰기
package main
import (
"encoding/csv"
"os"
)
func main() {
file, err := os.Create("file.csv")
if err != nil {
panic(err)
}
defer file.Close()
writer := csv.NewWriter(file)
writer.Comma = ';'
data := [][]string{
{"Name", "Age", "Email"},
{"John Doe", "30", "john@example.com"},
{"Jane Smith", "25", "jane@example.com"},
}
for _, record := range data {
err := writer.Write(record)
if err != nil {
panic(err)
}
}
writer.Flush()
}
위의 예제 코드에서는 encoding/csv
패키지를 사용하여 CSV 파일을 쓰고, writer.Comma
를 통해 열 구분자를 설정하고 있습니다. CSV 파일을 생성할 때에도 writer.Comma
를 사용하여 원하는 열 구분자를 설정할 수 있습니다.
결론
Go 언어에서는 encoding/csv
패키지를 사용하여 CSV 파일의 열 구분자를 처리할 수 있습니다. reader.Comma
와 writer.Comma
를 사용하여 열 구분자를 설정하면, CSV 파일을 쉽게 읽고 쓸 수 있습니다. 이를 통해 사용자는 다양한 열 구분자를 가지는 CSV 파일을 효과적으로 처리할 수 있습니다.
이렇듯 Go 언어는 CSV 파일의 열 구분자 처리를 위해 간단하고 효율적인 방법을 제공하고 있습니다.
관련 문서: Go 언어 공식 문서 - encoding/csv