encoding/json
- 将 JSON 字符串反解析为数组/结构体:
json.Unmarshal([]byte(s), &a),例如: ```go package main
import ( “fmt” “encoding/json” )
func main() { var coverList []string coverStr := “[\”https://img.alicdn.com/bao/uploaded/i1/2360209412/O1CN01jtiHtA2JOkOVn4Tdv_!!2-item_pic.png_400x400q60.jpg\",\"https://img.alicdn.com/bao/uploaded/bao/upload/TB18xU7eggP7K4jSZFqXXamhVXa.png_400x400q60.jpg\“]”; json.Unmarshal([]byte(coverStr), &coverList);
fmt.Println(coverList); // 输出: ["https://img.alicdn.com/bao/uploaded/i1/2360209412/O1CN01jtiHtA2JOkOVn4Tdv_!!2-item_pic.png_400x400q60.jpg", "https://img.alicdn.com/bao/uploaded/bao/upload/TB18xU7eggP7K4jSZFqXXamhVXa.png_400x400q60.jpg"]
}
2. 将数组/结构体转换为 JSON 字符串,即`json.Unmarshal([]byte(s), &a)`的逆操作,可使用:`json.Marshal(a)`,例如:```gopackage mainimport ("fmt""encoding/json")type UserItem struct {Name string `json:"name"`}func main() {userItem := UserItem{Name: "ABC",}userJSON, err := json.Marshal(userItem)if err != nil {fmt.Println(err)} else {fmt.Println(string(userJSON)); // 输出: '{"name":"ABC"}'}}
