在JSON处理中删除各种类型的数组
在JSON编码上的官方文档中列出了json编码的官方文档,可以将JOUNTER jon in Interface数据解码为intersefles jon}}。通过使用type断言,可以动态确定数据类型。适应代码
代码的以下修改版本显示了此方法:} 这是给出的 }` func识别datatypes(f interface {}){ 开关VF:= f。(type){ 案例映射[字符串]接口{}: fmt.println(“是地图:”) 对于k,v:= range vf { 开关VV:= v。(type){ 案例字符串: fmt.printf(“%v:是字符串 - %q \ n”,k,vv) case int: fmt.printf(“%v:is int -%q \ n”,k,vv) 默认: fmt.printf(“%v:”,k) 识别Datatypes(V) } } case []接口{}: fmt.println(“是一个数组:”) 对于k,v:= range vf { 开关VV:= v。(type){ 案例字符串: fmt.printf(“%v:是字符串 - %q \ n”,k,vv) case int: fmt.printf(“%v:is int -%q \ n”,k,vv) 默认: fmt.printf(“%v:”,k) 识别Datatypes(V) } } } } func main(){ fmt.println(“ json:\ n”,my_json,“ \ n”) var f接口{} err:= json.unmarshal([] byte(my_json),&f) 如果err!= nil { fmt.println(err) } 别的 { fmt.printf(“ JSON:”) 识别Datatypes(F) } } [2 { “ an_array”:[[ “用_a字符串”, { “ and”:“ some_more”, “不同”:[“嵌套”,“类型”] } 这是给出的 } JSON:是一张地图: an_array:是一个数组: 0:字符串 - “ with_a string” 1:是地图: 和:字符串 - “ some_more” 不同:是一个数组: 0:是字符串 - “嵌套” 1:字符串 - “ type”
此方法允许在数组中的动态标识和处理元素类型,为您的Unmarshallsing需求提供了一种多功能解决方案。免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3