Documentation
¶
Index ¶
- func IsRepairable(text string) bool
- func MustRepairJSON(text string) string
- func RepairJSON(text string) (string, error)
- func RepairToJsonMap(text string) (map[string]interface{}, error)
- func RepairToJsonSlice(text string) ([]interface{}, error)
- func RepairToStruct(text string, target interface{}) error
- func TryRepair(text string) (result string, repaired bool, err error)
- type DzJsonArray
- type DzJsonMap
- func (djm DzJsonMap) GetArray(key string) DzJsonArray
- func (djm DzJsonMap) GetBool(key string) bool
- func (djm DzJsonMap) GetFloat(key string) float64
- func (djm DzJsonMap) GetInt(key string) int
- func (djm DzJsonMap) GetMap(key string) DzJsonMap
- func (djm DzJsonMap) GetMapArray(key string) []DzJsonMap
- func (djm DzJsonMap) GetString(key string) string
- type DzJsonMapArray
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsRepairable ¶ added in v0.1.0
IsRepairable 判断给定的字符串是否可以通过 jsonrepair 修补。 如果输入本身是合法 JSON,也返回 true(无需修补即可通过)。
func MustRepairJSON ¶ added in v0.1.0
MustRepairJSON 修补不合法的 JSON 字符串,修补失败时 panic。
func RepairJSON ¶ added in v0.1.0
RepairJSON 修补不合法的 JSON 字符串,返回修补后的合法 JSON 字符串。 可修复的常见问题包括:
- 缺少引号的键或值: {name: John} → {"name": "John"}
- 单引号替代双引号: {'a':'foo'} → {"a":"foo"}
- 尾部逗号: {"a":1,} → {"a":1}
- 缺少闭合括号: {"items":[1,2,3 → {"items":[1,2,3]}
- JavaScript 注释: {"a":1/*comment*/} → {"a":1}
- Python 常量: {active: True} → {"active":true}
- JSONP 包装: callback({"ok":1}); → {"ok":1}
- 截断的 JSON: {"msg":"hello → {"msg":"hello"}
- 省略号占位: [1,2,...] → [1,2]
- NDJSON 多行: {"id":1}\n{"id":2} → [{"id":1},{"id":2}]
func RepairToJsonMap ¶ added in v0.1.0
RepairToJsonMap 修补不合法的 JSON 字符串并解析为 map[string]interface{}。
func RepairToJsonSlice ¶ added in v0.1.0
RepairToJsonSlice 修补不合法的 JSON 字符串并解析为 []interface{}。
func RepairToStruct ¶ added in v0.1.0
RepairToStruct 修补不合法的 JSON 字符串并解析到目标结构体。 target 必须为结构体指针。
Types ¶
type DzJsonArray ¶
type DzJsonArray []interface{}
func (DzJsonArray) GetBoolArray ¶
func (dja DzJsonArray) GetBoolArray() []bool
func (DzJsonArray) GetFloatArray ¶ added in v0.0.5
func (dja DzJsonArray) GetFloatArray() []float64
func (DzJsonArray) GetIntArray ¶ added in v0.0.5
func (dja DzJsonArray) GetIntArray() []int
func (DzJsonArray) GetMapArray ¶
func (dja DzJsonArray) GetMapArray() []DzJsonMap
func (DzJsonArray) GetStringArray ¶
func (dja DzJsonArray) GetStringArray() []string
type DzJsonMap ¶
type DzJsonMap map[string]interface{}
func NewDzJsonMap ¶
func ParseDzJsonMap ¶
func RepairToDzJsonMap ¶ added in v0.1.0
RepairToDzJsonMap 修补不合法的 JSON 字符串并解析为 DzJsonMap。 修补失败或解析失败时返回 nil。
func (DzJsonMap) GetArray ¶
func (djm DzJsonMap) GetArray(key string) DzJsonArray
func (DzJsonMap) GetMapArray ¶
type DzJsonMapArray ¶
type DzJsonMapArray []DzJsonMap
func NewDzJsonMapArray ¶
func NewDzJsonMapArray(jsonData []byte) DzJsonMapArray
func RepairToDzJsonMapArray ¶ added in v0.1.0
func RepairToDzJsonMapArray(text string) DzJsonMapArray
RepairToDzJsonMapArray 修补不合法的 JSON 字符串并解析为 DzJsonMapArray。 修补失败或解析失败时返回空切片。
Click to show internal directories.
Click to hide internal directories.