如何在golang中打印json值

时间:2019-06-07 07:30:47

标签: json go

我有一些json,想打印值,但是我不知道如何从json格式打印

"order_items":[  
      {  
         "total":1,
         "unitprice":1,
         "price":1,
         "create_date":"2019-06-07 13:51:36",
         "flow_no":"1234",
         "code":"4567",
         "quantiry":1,
         "discount_ctotal":0,
         "img":"",
         "fname":"first_name",
         "specs":"256"
      }
   ],

如何从中打印code值?

1 个答案:

答案 0 :(得分:1)

您必须制作一个struct,其中包含您要查找的数据。如果您只关心code,那么这就是您需要定义的全部内容。

type OrderItem struct {
    Code string `json:"code"`
}

然后将您的JSON解组到OrderItem的一部分中。

var orderItems []OrderItem
if err := json.Unmarshal(yourJson, &orderItems); err != nil {
    // handle errors in deserialization
}

然后对输出执行任何操作。

for _, orderItem := range orderItems {
    code := orderItem.Code
    // do something with it? I don't know
    fmt.Println(code)  // I guess?
}