如何将JSON字符串转换为struct [英] How to convert JSON string to struct
问题描述
我已经开始在golang中工作,我正在尝试解析JSON字符串以构建结构,但无法正常工作.
I have start working in golang, I am trying to parse JSON string to struct but its not working.
JSON字符串:
dailies:[{" userAccessToken:" acessToken," uploadStartTimeInSeconds:1499744832," uploadEndTimeInSeconds:1499744832," callbackURL:" callbackurl}]}}
dailies":[{"userAccessToken":"acessToken","uploadStartTimeInSeconds":1499744832,"uploadEndTimeInSeconds":1499744832,"callbackURL":"callbackurl"}]}
type pingDataFormat struct {
userAccessToken string
uploadStartTimeInSeconds int
uploadEndTimeInSeconds int
callbackURL string
}
下面是将JSON字符串转换为结构的代码
Below is code which convert JSON String to structs
pingJSON := make(map[string][]pingDataFormat)
err := json.Unmarshal([]byte(pingData), &pingJSON)
if err != nil {
panic(err)
}
fmt.Printf("\n\n json object:::: %v", pingJSON)
输出为:
json object :::: map [dailies:[{0 0}]]
json object:::: map[dailies:[{ 0 0 }]]
每日"没有数据,那么我应该遵循正确的方法进行解析以及在解析之后如何获取数据吗?
Here "dailies" dont have data, So do i following right approach to parse and how to get data after parse?
推荐答案
pingDataFormat
中的字段需要导出(以大写字母开头)
The fields in pingDataFormat
need to be exported (start with a capital letter)
type pingDataFormat struct {
UserAccessToken string `json:"userAccessToken"`
UploadStartTimeInSeconds int `json:"uploadStartTimeInSeconds"`
UploadEndTimeInSeconds int `json:"uploadEndTimeInSeconds"`
CallbackURL string `json:"callbackURL"`
}
那应该可以解决您的问题
That should solve your problem
https://play.golang.org/p/Z3yszFl01L
这篇关于如何将JSON字符串转换为struct的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!