когда открываю в икселе, там битая кодировка и ничего не понятно
нашел в интернетах вот такое решение, но оно тоже выдает какую-то хрень, может сталкивался кто-то и может подсказать?
csvFile, err := os.Create(path)
if err != nil {
logrus.Error("failed creating file: %s", err)
return err
}
tr := charmap.Windows1251.NewEncoder().Transformer
wEnc := transform.NewWriter(csvFile, tr)
w := csv.NewWriter(wEnc)
if err = w.WriteAll(records); err != nil {
return err
}
if err = csvFile.Close(); err != nil {
return err
}
golang.org/x/text/encoding/charmap попробуй
так в примере выше он и есть
кириллица не обязательно должна быть в 1251
package main import ( "encoding/csv" "log" "os" "golang.org/x/text/encoding/charmap" ) func main() { path := "example.csv" records := [][]string{ {"Привет", "мир"}, {"Пример", "текста"}, } csvFile, err := os.Create(path) if err != nil { log.Fatalf("failed creating file: %s", err) return } defer csvFile.Close() wEnc := charmap.Windows1251.NewEncoder().Writer(csvFile) w := csv.NewWriter(wEnc) if err := w.WriteAll(records); err != nil { log.Fatal(err) return } w.Flush() if err := w.Error(); err != nil { log.Fatal(err) return } }
прости, я не понимаю, в чем принципиальная разница с тем, что скинул я выше
сейчас другую идею пробую, если не получится, попробую это, спасибо)
так сразу это попробуйте, человека отпустите, он же вам прямо сейчас помогает, а свою сами потом попробуете, хоть узнаем помогло или нет))
я не могу одновременно сбилдить 2 решения(
Обсуждают сегодня