Golang에서 JSON 데이터를 구문 분석하는 데는 네 가지 주요 단계가 포함됩니다. json, fmt 및 ioutil이 포함된 आAWश्yк 패키지를 가져옵니다. 파일에서 JSON 데이터를 읽습니다. JSON 데이터를 구조나 맵으로 디코딩합니다. 맵의 키-값 쌍에 액세스하거나 디코딩된 구조체를 사용하세요.
Golang은 다음 단계를 통해 달성할 수 있는 JSON 데이터를 처리하는 강력한 도구를 제공합니다.
import ( "encoding/json" "fmt" "io/ioutil" )
jsonFile, err := ioutil.ReadFile("data.json") if err != nil { fmt.Println("Error reading JSON file:", err) return }
구조로 디코드:
type Person struct { Name string Age int } var person Person err = json.Unmarshal(jsonFile, &person) if err != nil { fmt.Println("Error decoding JSON data:", err) return }
맵으로 디코드:
var data map[string]interface{} err = json.Unmarshal(jsonFile, &data) if err != nil { fmt.Println("Error decoding JSON data:", err) return } // 访问 map中的键值对 fmt.Println("Name:", data["Name"])
JSON 파일을 읽고 이름과 나이를 인쇄합니다.
package main import ( "encoding/json" "fmt" "io/ioutil" ) type Person struct { Name string Age int } func main() { jsonFile, err := ioutil.ReadFile("data.json") if err != nil { fmt.Println("Error reading JSON file:", err) return } var person Person err = json.Unmarshal(jsonFile, &person) if err != nil { fmt.Println("Error decoding JSON data:", err) return } fmt.Printf("Name: %s, Age: %d\n", person.Name, person.Age) }
다음 JSON 데이터를 파일에 저장하세요.
{ "Name": "John Doe", "Age": 30 }
그런 다음 프로그램을 실행하면 출력은 다음과 같습니다.
Name: John Doe, Age: 30
위 내용은 Golang에서 JSON 데이터를 구문 분석하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!