go语言 JSON 读写到文件
func readFile() { filePtr, err := os.Open("person_info.json") if err != nil { fmt.Println("Open file Failed [Err:%s]", err.Error()) return } defer filePtr.Close() var person []PersonInfo // 创建json解码器 decoder := json.NewDecoder(filePtr) err = decoder.Decode(&person) if err != nil { fmt.Println("Decoder Failed", err.Error()) } else { fmt.Println("Decoder success") fmt.Println(person) } } func writeFile() { personInfo := []PersonInfo{{"David", 30, true, []string{"跑步", "读书", "看电影"}}, {"Lee", 27, false, []string{"工作", "读书", "看电影"}}} // 创建文件 filePtr, err := os.Create("person_info.json") if err != nil { fmt.Println("Create file Failed", err.Error()) return } defer filePtr.Close() // 创建Json编码器 encoder := json.NewEncoder(filePtr) err = encoder.Encode(personInfo) if err != nil { fmt.Println("Encoder Failed", err.Error()) } else { fmt.Println("Encoder success") } // 带JSON缩进格式写文件 //data, err := json.MarshalIndent(personInfo, "", " ") //if err != nil { // fmt.Println("Encoder Failed", err.Error()) // //} else { // fmt.Println("Encoder success") //} // //filePtr.Write(data) }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。