01-Convert json to csv 2021-06-09 Go 文章目录 Table of Contents1: Convert json to csv 1.1 json 文件1.2 convert Table of Contents Table of Contents1: Convert json to csv 1.1 json 文件1.2 convert1: Convert json to csv1.1 json 文件 company.json 1 2 3 4 5 6 7 [ { "App": "Instagram", "Company": "Facebook", "Category": "Social Media" }, { "App": "WeChat", "Company": "Tencent", "Category": "Social Media" }, { "App": "Hotstar", "Company": "Disney", "Category": "Entertainment" }, { "App": "CNBC", "Company": "Comcast", "Category": "News" }, { "App": "SnapChat", "Company": "Snap", "Category": "Social Media" } ] 1.2 convert 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 package main import ( "encoding/csv" "encoding/json" "fmt" "io/ioutil" "os" ) // Application struct type Application struct { App string Company string Category string } func main() { // read data from file jsonDataFromFile, err := ioutil.ReadFile("./company.json") if err != nil { fmt.Println(err) } // Unmarshal JSON data var jsonData []Application err = json.Unmarshal([]byte(jsonDataFromFile), &jsonData) if err != nil { fmt.Println(err) } csvFile, err := os.Create("./data.csv") if err != nil { fmt.Println(err) } defer csvFile.Close() writer := csv.NewWriter(csvFile) for _, usance := range jsonData { var row []string row = append(row, usance.App) row = append(row, usance.Company) row = append(row, usance.Category) writer.Write(row) } // remember to flush! writer.Flush() } 文章作者 lucas 上次更新 2022-03-15 (4b5aad2)