5
Tôi có một tệp json mẫu mà được cấu trúc như thế nàyMarshall và UnMarshall JSON Nội dung trong GoLang
{
"method":"brute_force",
"bc":"select * from blah;",
"gc":[
"select sum(year) from blah;",
"select count(*) from table;"
]
}
Tôi cố gắng để viết một chương trình đi mà có thể đọc tập tin này và hoạt động của nội dung json.
package main
import (
"fmt"
"encoding/json"
"io/ioutil"
)
type Response2 struct {
method string
bc string
gc []string
}
func main() {
file,_ := ioutil.ReadFile("config.json")
fmt.Printf("%s",string(file))
res := &Response2{}
json.Unmarshal([]byte(string(file)), &res)
fmt.Println(res)
fmt.Println(res.method)
fmt.Println(res.gc)
}
res.method và res.gc không in bất cứ thứ gì. Tôi không biết chuyện gì đang xảy ra.
cảm ơn một tấn. Tôi dint biết điều này trước đây. Nhưng nó chỉ là lạ, trình biên dịch đi cho phép sai lầm như vậy đi qua âm thầm. – Rahul
@Rahul không phải là lỗi biên dịch. Cú pháp là đúng. Là một ngữ nghĩa và trình biên dịch không thể làm nhiều về nó. (ps. xin vui lòng chấp nhận câu trả lời :)) – fabrizioM
Như một noobie đi này là đáng ngạc nhiên hữu ích. Tôi so khớp các tên biến với json chữ thường. Không có lỗi nhưng không có giá trị trong unmarshal/giải mã. Uppercasing nó cố định nó! :) –