json.go 650 B

123456789101112131415161718192021222324252627282930313233343536
  1. package tools
  2. import (
  3. "encoding/json"
  4. )
  5. // 获得一个对象的Key,Value值
  6. func JsonMarshal(v interface{}) (jsonStr string, err error) {
  7. jsonBytes, err := json.Marshal(v)
  8. if err != nil {
  9. return "", err
  10. } else {
  11. return string(jsonBytes), nil
  12. }
  13. }
  14. // 对象转换为Json,并且格式化清晰的样子
  15. func JsonMarshalFormat(v interface{}) (jsonStr string, err error) {
  16. jsonBytes, err := json.MarshalIndent(v, "", " ")
  17. if err != nil {
  18. return "", err
  19. } else {
  20. return string(jsonBytes), nil
  21. }
  22. }
  23. // JSON反序列化
  24. func JsonUnmarshal(jsonStr string, v interface{}) error {
  25. return json.Unmarshal([]byte(jsonStr), v)
  26. }