Shembull: Leximi i JSON fajllit me parsim me strukt

package main

import (
    "encoding/json"
    "fmt"
    "io/ioutil"
    "os"
    "strconv"
)

type Anetaret struct {
    Anetaret []Anetari `json:"anetaret"`
}

type Anetari struct {
    Emri     string   `json:"emri"`
    Mosha    int      `json:"mosha"`
    Gjinia   string   `json:"gjinia"`
    Kontakti Kontakti `json:"kontakti"`
}

type Kontakti struct {
    Emaili   string `json:"emaili"`
    Telefoni string `json:"telefoni"`
}

func main() {
    fajlli, err := os.Open("anetaret.json")
    if err != nil {
        fmt.Println(err)
    }
    defer fajlli.Close()

    teDhenat, _ := ioutil.ReadAll(fajlli)
    var anetaret Anetaret

    json.Unmarshal(teDhenat, &anetaret)
    for i := 0; i < len(anetaret.Anetaret); i++ {
        fmt.Println("Emri: " + anetaret.Anetaret[i].Emri)
        fmt.Println("Mosha: " + strconv.Itoa(anetaret.Anetaret[i].Mosha))
        fmt.Println("Gjinia: " + anetaret.Anetaret[i].Gjinia)
        fmt.Println("Emaili: " + anetaret.Anetaret[i].Kontakti.Emaili)
        fmt.Println("Telefoni: " + anetaret.Anetaret[i].Kontakti.Telefoni)
    }
}

anetaret.json

{
  "anetaret": [
    {
      "emri": "Alban",
      "mosha": 23,
      "gjinia": "m",
      "kontakti": {
        "emaili": "alban@gmail.com",
        "telefoni": "049111222"
      }
    },
    {
      "emri": "Teuta",
      "mosha": 17,
      "gjinia": "f",
      "kontakti": {
        "emaili": "teuta@gmail.com",
        "telefoni": "044222333"
      }
    }
  ]
}

https://play.golang.org/p/a5H7kzLvC_4

Rezultati:

Emri: Alban
Mosha: 23
Gjinia: m
Emaili: alban@gmail.com
Telefoni: 049111222
Emri: Teuta
Mosha: 17
Gjinia: f
Emaili: teuta@gmail.com
Telefoni: 044222333

I> Ky program duhet të kompajlohet lokalisht, nuk do të ekzekutohet në Go Playground. JSON kodi të ruhet si fajll me emrin anetaret.json.

All Rights Reserved Theme by 404 THEME.