009-Go 读取写入CSV文件
Posted YSHY
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了009-Go 读取写入CSV文件相关的知识,希望对你有一定的参考价值。
package main import( "encoding/csv" "fmt" "os" "strconv" ) type Post struct{ Id int Content string Author string } func main(){ csvFile, err := os.Create("posts.csv") if err!= nil{ panic(err) } defer csvFile.Close() posts := []Post{ Post{Id:100,Content:"Hello go",Author:"张三"}, Post{Id:200,Content:"Hello java",Author:"李四"}, Post{Id:300,Content:"Hello php",Author:"王五"}, } writer := csv.NewWriter(csvFile) for _,post := range posts{ line := []string{strconv.Itoa(post.Id), post.Content, post.Author} err := writer.Write(line) if err != nil{ panic(err) } } writer.Flush() file,err := os.Open("posts.csv") if err != nil{ panic(err) } defer file.Close() reader := csv.NewReader(file) reader.FieldsPerRecord = -1 record, err := reader.ReadAll() if err != nil{ panic(err) } var myposts []Post for _, item := range record{ id, _ := strconv.ParseInt(item[0], 0, 0) post := Post{Id: int(id), Content:item[1], Author:item[2]} myposts = append(myposts, post) } for _, value := range myposts{ fmt.Printf("Id:%d,Content:%s,Author:%s\n", value.Id, value.Content, value.Author) } }
以上是关于009-Go 读取写入CSV文件的主要内容,如果未能解决你的问题,请参考以下文章
从 csv 文件读取数据并使用 phpspreadsheet 写入 excel