色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

go判斷字符串是否是json

林國瑞1年前9瀏覽0評論

在Go語言中,判斷一個字符串是否是JSON格式可以使用官方提供的Json包中的Unmarshal函數。

func Unmarshal(data []byte, v interface{}) error

Unmarshal函數將JSON數據解析為Go語言的值,如果傳入的字符串不符合JSON格式則會返回解析錯誤(如下所示):

json: cannot unmarshal string into Go value of type struct { }

如果要判斷一個字符串是否符合JSON格式,可以在解析之前使用json.Valid函數判斷:

func Valid(data []byte) bool

Valid函數返回一個布爾值表示該字符串是否為JSON格式,例如:

str := `{ "name": "Alice", "age": 18 }`
if json.Valid([]byte(str)) {
fmt.Println("Valid JSON")
} else {
fmt.Println("Invalid JSON")
}

以上代碼會輸出“Valid JSON”,因為該字符串符合JSON格式。而如果我們修改該字符串使其不符合JSON格式,如下所示:

str := `{ "name": "Alice", "age": 18, }`
if json.Valid([]byte(str)) {
fmt.Println("Valid JSON")
} else {
fmt.Println("Invalid JSON")
}

以上代碼會輸出“Invalid JSON”,因為該字符串不符合JSON格式。注意,我們在第二個屬性的末尾增加了一個逗號,這是不符合JSON格式的。