내가 보이는 JSON 파일을 읽으려고하고 같은JSON 및 유형 캐스팅
[{ "title": "hi", "tags": [1,2,3,4,5,6] }, {...}, {...}]
및 코드는 내가 무엇을 알아 내려고 노력하고 있어요 것은 내가 피할 수있는 방법이다이
contentdat, err := ioutil.ReadFile("content.json")
check(err)
var content []interface{}
err = json.Unmarshal(contentdat, &content)
check(err)
for i, contentItem := range content {
vertedContentItem := contentItem.(map[string]interface{})
contentTags := vertedContentItem["tags"].([]interface{})
contentItemTags := make([]int, len(contentTags))
for i, ctv := range contentTags {
contentItemTags[i] = int(ctv.(float64))
}
처럼 보인다 모든 유형 캐스팅을 수행하고 json obj에 직접 액세스하거나 전체 json 구조에 대해 한 번만 입력하면됩니다. 나는 예상대로 구조하지만하셨습니까 '를 통해 대신 인터페이스 {} 그냥 루프의
var content []Content
같은 내용을 너무
type Content struct {
title string
tags []int
}
같은 내부 객체의 구조를 정의하고 선언에 대해 생각을했다 일하지 마라. 어떤 아이디어?
샘플 JSON이 유효하지 않습니다. – Adrian
업데이트 됨, 감사합니다. –
중복. 3'000th입니다. – Volker