package main
import (
“encoding/json”
“fmt”
//“os”
)
func main() {
jsonStr := {"accessToken":"507b5e08ee444dck887b66bd08672905", "clientToken":"64e3a5415bfe405d9485f1jf2ea5c68e", "selectedProfile":{"id":"selID","name":"Bluek404"}, "selectedProfile111":{"id":"selID111","name":"Bluek404111"}, "availableProfiles":[{"id":"测试ava","name":"Bluek404"}]}
var dat map[string]interface{}
if err := json.Unmarshal([]byte(jsonStr), &dat); err == nil {
fmt.Println(“json str 转map=========”)
mapTmp := dat[“selectedProfile”].(map[string]interface {})
fmt.Printf(“selectedProfile:%s %s\n”, mapTmp[“id”], mapTmp[“name”])
mapTmp0 := dat[“selectedProfile111”].(map[string]interface {})
fmt.Printf(“selectedProfile111:%s %s\n”, mapTmp0[“id”], mapTmp0[“name”])
mapTmp1 := (dat[“availableProfiles”].([]interface {}))[0].(map[string]interface {})
fmt.Printf(“availableProfiles:%s %s\n”, mapTmp1[“id”], mapTmp1[“name”])
}
fmt.Println("\n")
//数组
jsonStr1 := ["aaaaa","bbbbb"]
var dat1 []interface{}
if err1 := json.Unmarshal([]byte(jsonStr1), &dat1); err1 == nil {
for index, value := range dat1 {
fmt.Printf(“test:%d %s\n”, index, value)
}
}
var AllInfo []interface{}
if err := json.Unmarshal([]byte(respdata), &AllInfo); err == nil {
for _, value := range AllInfo {
BuckMap := value.(map[string]interface{})
name := fmt.Sprintf("%s", BuckMap["name"])
last_modified := fmt.Sprintf("%s", BuckMap["last_modified"])
//t,_ := time.Parse("2016-01-06",last_modified)
//fmt.Println(t)
fmt.Println(time.Now().Format())
v.Buckets.Bucket = append(v.Buckets.Bucket, XMLBuck{name, last_modified})
}
}
}
}