[英]Problem when using json.Unmarshal() on a byte array
我有一個圖像數據結構
type ImageData struct {
Name string
Data []byte
}
數據字段是轉換為字節的圖像。
我有jsonImages
像[{"Data":<many-many bytes>, "Name":"abracadabra"}]
和var imagesData []ImageData
。 當我嘗試使用json.Unmarshal([]byte(jsonImages), &imagesData)
作為fmt.Println(imagesData)
的結果時,我收到[{abracadabra []}]
。 數據字段為空。 我究竟做錯了什么? 謝謝你的幫助!
我嘗試用下面的代碼片段復制場景它工作正常。這是您正在嘗試的場景嗎:
package main
import (
"encoding/json"
"fmt"
)
type Imgdta struct {
Name string
Dta []byte
}
func main() {
var Imgdta1 Imgdta
var Imgdta2 Imgdta
Imgdta1.Dta = []byte("asfafalsffa")
Imgdta1.Name = "asnakakad"
imgjson, _ := json.Marshal(Imgdta1)
fmt.Println("Input Json:-", string(imgjson))
json.Unmarshal((imgjson), &Imgdta2)
fmt.Println((Imgdta2))
}
... 結果:
Input Json:- {"Name":"asnakakad","Dta":"YXNmYWZhbHNmZmE="}
{asnakakad [97 115 102 97 102 97 108 115 102 102 97]}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.