1
0

gob.go 434 B

123456789101112131415161718192021222324252627282930
  1. package utils
  2. import (
  3. "bytes"
  4. "encoding/gob"
  5. )
  6. //解码
  7. func Decode(value string, r interface{}) error {
  8. network := bytes.NewBuffer([]byte(value))
  9. dec := gob.NewDecoder(network)
  10. return dec.Decode(r)
  11. }
  12. //编码
  13. func Encode(value interface{}) (string, error) {
  14. network := bytes.NewBuffer(nil)
  15. enc := gob.NewEncoder(network)
  16. err := enc.Encode(value)
  17. if err != nil {
  18. return "", err
  19. }
  20. return network.String(), nil
  21. }