ljymoonlight

导航

golang csv写入基础

package main

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

type CsvAPI struct {
f *os.File
}

func (h *CsvAPI) CreateFile(filename string) {
f, err := os.OpenFile(filename, os.O_CREATE|os.O_RDWR, 0644)
if err != nil {
fmt.Println("Error: ", err)
return
}
h.f = f

}

func (h *CsvAPI) WriteHeader(heads []string) {

writer := csv.NewWriter(h.f)

writer.Write(heads)
writer.Flush()

if err := writer.Error(); err != nil {
	fmt.Println(err)
}

}

func TestCSV() {
var mycsv CsvAPI
mycsv.CreateFile("test.csv")
var data = []string{"3", "John", "23"}
mycsv.WriteHeader(data)
var data1 = []string{"4", "John", "23"}
mycsv.WriteHeader(data1)
}

// var data = []string{"3", "John", "23"}
// writer.Write(data)

// // 也可以一次性写入多条
// var d = [][]string{{"1", "Edgar", "20"}, {"2", "Tom", "18"}}
// writer.WriteAll(d)

// // 将缓存中的内容写入到文件里
// writer.Flush()

// if err = writer.Error(); err != nil {
// fmt.Println(err)
// }
// }

posted on 2022-01-18 22:22  ljymoonlight  阅读(605)  评论(0编辑  收藏  举报