gob
未能編碼map[string]interface{}
料滴:類型未註冊接口:地圖[字符串]接口{}
gob: type not registered for interface: map[string]interface {}
http://play.golang.org/p/Si4hd8I0JE
package main
import (
"bytes"
"encoding/gob"
"encoding/json"
"fmt"
"log"
)
func CloneObject(a, b interface{}) []byte {
buff := new(bytes.Buffer)
enc := gob.NewEncoder(buff)
dec := gob.NewDecoder(buff)
err := enc.Encode(a)
if err != nil {
log.Panic("e1: ", err)
}
b1 := buff.Bytes()
err = dec.Decode(b)
if err != nil {
log.Panic("e2: ", err)
}
return b1
}
func main() {
var a interface{}
a = map[string]interface{}{"X": 1}
b2, err := json.Marshal(&a)
fmt.Println(string(b2), err)
var b interface{}
b1 := CloneObject(&a, &b)
fmt.Println(string(b1))
}
是否有可能以編碼在料滴map[string]interface{}
? 我可以使用JSON對其進行編碼
谷歌只返回2頁。此頁面並轉到源代碼:https://www.google.com.ua/search?q=gob%3A+type+not+registered+for+interface%3A+map%5Bstring%5Dinterface+%7B%7D&oq=gob %3A +型+未+註冊+爲+接口%3A +地圖%5Bstring%5Dinterface +%7B%7D&AQS = chrome..69i57j69i58&的SourceID =鉻&espv = 210&es_sm = 93&即= UTF-8#q =%22gob:+型+未+註冊爲+ +接口:+映射%5Bstring%5Dinterface +%7B%7D%22 – Artem