在Go語言編程中,json文件是一個非常重要的數據交換格式。在有些情況下,需要將一些數據序列化為json文件或將json文件反序列化為數據。那么,在Go語言中,如何寫json文件路徑呢?
例如,我們需要將一個結構體序列化為json文件,可以使用如下代碼:
type Person struct { Name string `json:"name"` Age int `json:"age"` } func main() { person := Person{"Tom", 18} file, err := os.Create("/path/to/file/person.json") if err != nil { panic(err) } defer file.Close() encoder := json.NewEncoder(file) err = encoder.Encode(person) if err != nil { panic(err) } }
如上代碼所示,我們使用os.Create創建json文件,保存在指定的路徑"/path/to/file/person.json"中。
反之,如果需要將json文件反序列化為數據,可以使用如下代碼:
type Person struct { Name string `json:"name"` Age int `json:"age"` } func main() { file, err := os.Open("/path/to/file/person.json") if err != nil { panic(err) } defer file.Close() var person Person decoder := json.NewDecoder(file) err = decoder.Decode(&person) if err != nil { panic(err) } fmt.Println(person) }
如上代碼所示,我們同樣使用os.Open打開指定路徑的json文件,然后使用json.NewDecoder解碼為指定的結構體類型。
在以上兩種情況下,我們需要注意的是,寫入或讀取json文件的路徑需要注意文件的權限和存在性。
上一篇mysql單點故障
下一篇go中定義json的格式