json

package
v2.4.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 6, 2024 License: Apache-2.0 Imports: 6 Imported by: 1

README

Go implements JSON serialization and JSON deserialization based on map and slice

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type JSON

type JSON interface {
	Size() int                  //返回数据数量
	Type() reflect.Kind         //当前对象数量类型
	Data() interface{}          //返回原始数据
	SetValue(value interface{}) //设置值
	String() string             //返回 string 类型值
	Int() int                   //返回 int 类型值, 把所有数字类型都转换 int 返回
	Int64() int64               //返回 uint 类型值, 把所有数字类型都转换 int64 返回
	UInt() uint                 //返回 uint 类型值, 把所有数字类型都转换 uint 返回
	UInt64() uint64             //返回 uint 类型值, 把所有数字类型都转换 uint64 返回
	Bytes() []byte              //转换为 '[]byte' 并返回, 任意类型都将转换
	Float() float64             //返回 float64 类型值 把所有数字类型都转换 float64 返回
	Bool() bool                 //返回 bool 类型值
	JSONObject() JSONObject     //返回 JSONObject 对象类型
	JSONArray() JSONArray       //返回 JSONArray 对象类型
	JsonData() *JsonData        //JSON Data
	ToJSONString() string       //转换为JSON字符串并返回
	IsString() bool             //当前对象是否为 string
	IsInt() bool                //当前对象是否为 int
	IsUInt() bool               //当前对象是否为 uint
	IsBytes() bool              //当前对象是否为 []byte
	IsFloat() bool              //当前对象是否为 float64
	IsBool() bool               //当前对象是否为 bool
	IsObject() bool             //当前对象是否为 JSONObject
	IsArray() bool              //当前对象是否为 JSONArray
	Clear()                     //清空所有数据,保留原始数据类型
	Free()                      //释放数据空间,且类型失效,当前对象不可用
}

JSON object

func NewJSON

func NewJSON(data []byte) JSON

NewJSON

	return JSON Object, JSONArray or JSONObject
 data:
   []byte("{...}") object
   []byte("[...]") array

type JSONArray

type JSONArray interface {
	JSON
	Add(value ...interface{})                // Add data of any type
	SetByIndex(index int, value interface{}) // Set any type of data at the specified subscript position
	RemoveByIndex(index int)                 // remove data for index
	GetStringByIndex(index int) string       // return string data for index
	GetIntByIndex(index int) int             // return int data for index
	GetInt64ByIndex(index int) int64         // return int64 data for index
	GetUIntByIndex(index int) uint           // return uint data for index
	GetUInt64ByIndex(index int) uint64       // return uint64 data for index
	GetBytesByIndex(index int) []byte        // return []byte data for index
	GetFloatByIndex(index int) float64       // return float64 data for index
	GetBoolByIndex(index int) bool           // return bool data for index
	GetArrayByIndex(index int) JSONArray     // return JSONArray data for index
	GetObjectByIndex(index int) JSONObject   // return JSONObject data for index
	GetByIndex(index int) JSON               // return JSON data for index
}

JSONArray

Manipulate data according to subscript, failure to return the default value of the data type

func NewJSONArray

func NewJSONArray(value interface{}) JSONArray

NewJSONArray

byte JSONArray, array & slice convert
value:
  []byte("[...]")
  []slice

type JSONObject

type JSONObject interface {
	JSON
	HasKey(key string) bool               // has key
	Set(key string, value interface{})    // Sets or overrides the value of the specified key and sets a new arbitrary type value
	RemoveByKey(key string)               // remove data for key
	GetStringByKey(key string) string     // return string data for key
	GetIntByKey(key string) int           // return int data for key
	GetInt64ByKey(key string) int64       // return int64 data for key
	GetUIntByKey(key string) uint         // return uint data for key
	GetUInt64ByKey(key string) uint64     // return uint64 data for key
	GetBytesByKey(key string) []byte      // return []byte data for key
	GetFloatByKey(key string) float64     // return float64 data for key
	GetBoolByKey(key string) bool         // return bool data for key
	GetArrayByKey(key string) JSONArray   // return JSONArray data for key
	GetObjectByKey(key string) JSONObject // return JSONObject data for key
	GetByKey(key string) JSON             // return JSON data for key
	Keys() []string                       // return current object all key
}

JSONObject

	object type key : value
 According to the key operation data, the default value of the data type is returned when a failure occurs

func NewJSONObject

func NewJSONObject(value interface{}) JSONObject

NewJSONObject

byte JSONObject, struct convert
 value:
   []byte("{...}")
   struct
   map[string][type]

type JsonData

type JsonData struct {
	// contains filtered or unexported fields
}

JsonData

Data structure

func NewJsonData

func NewJsonData(t reflect.Kind, s int, v interface{}) *JsonData

NewJsonData

create Json
t: data type
s: data size
v: data value

func (*JsonData) Add

func (m *JsonData) Add(value ...interface{})

func (*JsonData) Bool

func (m *JsonData) Bool() (r bool)

func (*JsonData) Bytes

func (m *JsonData) Bytes() []byte

func (*JsonData) Clear

func (m *JsonData) Clear()

func (*JsonData) ConvertToData

func (m *JsonData) ConvertToData() interface{}

ConvertToData to map / slice / value

func (*JsonData) Data

func (m *JsonData) Data() interface{}

func (*JsonData) Float

func (m *JsonData) Float() (r float64)

func (*JsonData) Free

func (m *JsonData) Free()

func (*JsonData) GetArrayByIndex

func (m *JsonData) GetArrayByIndex(index int) JSONArray

func (*JsonData) GetArrayByKey

func (m *JsonData) GetArrayByKey(key string) JSONArray

func (*JsonData) GetBoolByIndex

func (m *JsonData) GetBoolByIndex(index int) bool

func (*JsonData) GetBoolByKey

func (m *JsonData) GetBoolByKey(key string) (r bool)

func (*JsonData) GetByIndex

func (m *JsonData) GetByIndex(index int) JSON

func (*JsonData) GetByKey

func (m *JsonData) GetByKey(key string) JSON

func (*JsonData) GetBytesByIndex

func (m *JsonData) GetBytesByIndex(index int) []byte

func (*JsonData) GetBytesByKey

func (m *JsonData) GetBytesByKey(key string) []byte

func (*JsonData) GetFloatByIndex

func (m *JsonData) GetFloatByIndex(index int) float64

func (*JsonData) GetFloatByKey

func (m *JsonData) GetFloatByKey(key string) (r float64)

func (*JsonData) GetInt64ByIndex

func (m *JsonData) GetInt64ByIndex(index int) int64

func (*JsonData) GetInt64ByKey

func (m *JsonData) GetInt64ByKey(key string) (r int64)

func (*JsonData) GetIntByIndex

func (m *JsonData) GetIntByIndex(index int) int

func (*JsonData) GetIntByKey

func (m *JsonData) GetIntByKey(key string) (r int)

func (*JsonData) GetObjectByIndex

func (m *JsonData) GetObjectByIndex(index int) JSONObject

func (*JsonData) GetObjectByKey

func (m *JsonData) GetObjectByKey(key string) JSONObject

func (*JsonData) GetStringByIndex

func (m *JsonData) GetStringByIndex(index int) string

func (*JsonData) GetStringByKey

func (m *JsonData) GetStringByKey(key string) string

func (*JsonData) GetUInt64ByIndex

func (m *JsonData) GetUInt64ByIndex(index int) uint64

func (*JsonData) GetUInt64ByKey

func (m *JsonData) GetUInt64ByKey(key string) (r uint64)

func (*JsonData) GetUIntByIndex

func (m *JsonData) GetUIntByIndex(index int) uint

func (*JsonData) GetUIntByKey

func (m *JsonData) GetUIntByKey(key string) (r uint)

func (*JsonData) HasKey

func (m *JsonData) HasKey(key string) bool

func (*JsonData) Int

func (m *JsonData) Int() (r int)

func (*JsonData) Int64

func (m *JsonData) Int64() (r int64)

func (*JsonData) IsArray

func (m *JsonData) IsArray() bool

func (*JsonData) IsBool

func (m *JsonData) IsBool() bool

func (*JsonData) IsBytes

func (m *JsonData) IsBytes() bool

func (*JsonData) IsFloat

func (m *JsonData) IsFloat() bool

func (*JsonData) IsInt

func (m *JsonData) IsInt() bool

func (*JsonData) IsObject

func (m *JsonData) IsObject() bool

func (*JsonData) IsString

func (m *JsonData) IsString() bool

func (*JsonData) IsUInt

func (m *JsonData) IsUInt() bool

func (*JsonData) JSONArray

func (m *JsonData) JSONArray() JSONArray

func (*JsonData) JSONObject

func (m *JsonData) JSONObject() JSONObject

func (*JsonData) JsonData

func (m *JsonData) JsonData() *JsonData

func (*JsonData) Keys

func (m *JsonData) Keys() []string

func (*JsonData) RemoveByIndex

func (m *JsonData) RemoveByIndex(index int)

func (*JsonData) RemoveByKey

func (m *JsonData) RemoveByKey(key string)

func (*JsonData) Set

func (m *JsonData) Set(key string, value interface{})

func (*JsonData) SetByIndex

func (m *JsonData) SetByIndex(index int, value interface{})

func (*JsonData) SetValue

func (m *JsonData) SetValue(value interface{})

func (*JsonData) Size

func (m *JsonData) Size() int

func (*JsonData) String

func (m *JsonData) String() string

func (*JsonData) ToJSONString

func (m *JsonData) ToJSONString() string

func (*JsonData) Type

func (m *JsonData) Type() reflect.Kind

func (*JsonData) UInt

func (m *JsonData) UInt() (r uint)

func (*JsonData) UInt64

func (m *JsonData) UInt64() (r uint64)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL