簡體   English   中英

在字節數組上使用 json.Unmarshal() 時出現問題

[英]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]}

網址 - https://play.golang.org/p/LQNwLqDTvt5

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM