gob
nicht map[string]interface{}
gob: Typ nicht registriert für die Schnittstelle: map [string] Schnittstelle {}
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))
}
Ist es möglich, kodieren, zu kodieren map[string]interface{}
in gob? Ich bin in der Lage, es mit JSON
Google gibt nur zwei Seiten. Diese Seite und gehen Sie Quellcode: https://www.google.com.ua/search?q=gob%3A+type+nicht+registrierte+für+interface%3A+map%5Bstring%5Dinterface+%7B%7D&oq=gob % 3A + Typ + nicht + registriert + für + Schnittstelle% 3A + Karte% 5Bstring% 5Dchnittstelle +% 7B% 7D & aqs = chrom..69i57j69i58 & sourceid = chrome & espv = 210 & es_sm = 93 & ie = UTF-8 # q =% 22gob: + typ + nicht + registriert + für + schnittstelle: + karte% 5Bstring% 5Dinterface +% 7B% 7D% 22 – Artem