Golang Json测试

结构体是谷歌搜索API

package mainimport ( "encoding/json" "fmt" "io/ioutil" "log")type Datas struct { Kind string `json:"kind"` URL struct { Type string `json:"type"` Template string `json:"template"` } `json:"url"` Queries struct { Request []struct { Title string `json:"title"` TotalResults string `json:"totalResults"` SearchTerms string `json:"searchTerms"` Count int `json:"count"` StartIndex int `json:"startIndex"` InputEncoding string `json:"inputEncoding"` OutputEncoding string `json:"outputEncoding"` Safe string `json:"safe"` Cx string `json:"cx"` } `json:"request"` NextPage []struct { Title string `json:"title"` TotalResults string `json:"totalResults"` SearchTerms string `json:"searchTerms"` Count int `json:"count"` StartIndex int `json:"startIndex"` InputEncoding string `json:"inputEncoding"` OutputEncoding string `json:"outputEncoding"` Safe string `json:"safe"` Cx string `json:"cx"` } `json:"nextPage"` } `json:"queries"` Context struct { Title string `json:"title"` } `json:"context"` SearchInformation struct { SearchTime float64 `json:"searchTime"` FormattedSearchTime string `json:"formattedSearchTime"` TotalResults string `json:"totalResults"` FormattedTotalResults string `json:"formattedTotalResults"` } `json:"searchInformation"` Items []struct { Kind string `json:"kind"` Title string `json:"title"` HTMLTitle string `json:"htmlTitle"` Link string `json:"link"` DisplayLink string `json:"displayLink"` Snippet string `json:"snippet"` HTMLSnippet string `json:"htmlSnippet"` CacheID string `json:"cacheId"` FormattedURL string `json:"formattedUrl"` HTMLFormattedURL string `json:"htmlFormattedUrl"` Pagemap struct { Metatags []struct { Author string `json:"author"` Copyright string `json:"copyright"` } `json:"metatags"` } `json:"pagemap,omitempty"` } `json:"items"`}func main() { buf, err := ioutil.ReadFile("C:/文档/Go/学习/search.json") if err != nil { log.Println(err) } //log.Println(string(buf)) //log.Println() //str := string(buf) //log.Println(str) log.Println() var d Datas err = json.Unmarshal(buf, &d) if err != nil { fmt.Println(err) } fmt.Println("look:") fmt.Println(d.Items[0].Link)}

相关文章