在Go語言中,讀寫JSON文件十分常見,同時也十分容易。在進行JSON文件的讀寫之前,需要首先了解如何操作文件路徑。
在Go語言中,文件路徑可以使用字符串表示,而且支持跨平臺的路徑表示方式。在Windows系統中,文件路徑使用反斜杠“\”作為路徑分隔符,在Linux和Mac OS系統中,文件路徑使用正斜杠“/”作為路徑分隔符。
在讀取JSON文件時,可以使用標準庫中的“io/ioutil”和“encoding/json”包。首先需要通過ioutil包中的ReadFile函數讀取JSON文件,并將讀取到的數據解析成JSON格式的數據。
func readJSON(path string) ([]byte, error) { data, err := ioutil.ReadFile(path) if err != nil { return nil, err } return data, nil } func parseJSON(data []byte) ([]interface{}, error) { var result []interface{} err := json.Unmarshal(data, &result) if err != nil { return nil, err } return result, nil }
在解析JSON格式的數據之后,可以對數據進行操作,并將操作后的數據寫入到指定的JSON文件中。使用標準庫中的“encoding/json”包,可以將JSON格式的數據轉換成字符串格式,并使用ioutil包中的WriteFile函數將其寫入文件。
func writeJSON(path string, data interface{}) error { content, err := json.MarshalIndent(data, "", " ") if err != nil { return err } return ioutil.WriteFile(path, content, 0644) }
最后需要注意的一點是,無論是讀取JSON文件還是寫入JSON文件,都需要使用絕對路徑或相對路徑表示文件路徑。在使用絕對路徑時,需要使用操作系統對應的根目錄作為路徑的起點,例如Windows系統中的“C:\”、Linux系統中的“/”等。
上一篇c json參數