Как указать формат кодирования при чтении CSV? - PullRequest
0 голосов
/ 28 декабря 2018

Я пишу пакет для чтения файлов CSV в Go, и мне нужно открыть файлы CSV, которые могут быть закодированы в различных форматах (таких как UTF8, Latin1 или другие).Есть ли способ указать формат кодировки файла CSV для чтения?

1 Ответ

0 голосов
/ 28 декабря 2018

Пакет csv

import "encoding/csv"

func NewReader

func NewReader(r io.Reader) *Reader

NewReader возвращает новый Reader, который читает из r.


Укажите от io.Reader до csv.NewReader, которые сопоставляют набор символов файла CSV с Unicode UTF-8.

Например,

import (
    "encoding/csv"

    "golang.org/x/text/encoding/charmap"
)

file, err := os.Open(filename)
if err != nil {
    return err
}
defer file.Close()
rdr := csv.NewReader(charmap.ISO8859_15.NewDecoder().Reader(file))
...