Json 数据转换

json 数据格式:

address = {"code":0,"data":{"ip":"124.122.146.0","country":"泰国","area":"","region":"巴吞他尼府","city":"XX","county":"XX","isp":"True","country_id":"TH","area_id":"","region_id":"TH_39","city_id":"xx","county_id":"xx","isp_id":"2000158"}}

 
         String country = JSONObject.fromObject(json.get("data")).get("country").toString();
         String region = JSONObject.fromObject(json.get("data")).get("region").toString();  
         String city = JSONObject.fromObject(json.get("data")).get("city").toString();
         String isp = JSONObject.fromObject(json.get("data")).get("isp").toString();  
         String area = JSONObject.fromObject(json.get("data")).get("area").toString();
         String county = JSONObject.fromObject(json.get("data")).get("county").toString();
         System.out.println("国家: " + country);  
         System.out.println("地区: " + area);  
         System.out.println("省份: " + region);  
         System.out.println("城市: " + city);  
         System.out.println("区/县: " + county);  
         System.out.println("互联网服务提供商: " + isp);  

数据最外层是一个json对象,里面又嵌套一个名为data的json对象,要想获取data里面属性的值,需要先获取最外层json对象data属性的值,然后通过JSONObject.fromObject(json.get("data"))转换为JsonObject对象,然后通过JsonObject类的get("country")方法获取country对应的值


Json数据格式

{"from":"zh","to":"th","trans_result":[{"src":"高度600米","dst":"600 เมตรความสูง"}]}

最外面是Json对象,里面有三个属性,其中trans_result为Json数组,所以获取trans_result属性里面的值,需要将trans_result转为JsonArray对象,通过JsonArray.get[0],,将其转换为JsonObject对象,在获取JsonObject属性的值

       JSONObject json = JSONObject.fromObject(str_dec);//str_dec为上面的json数据
        System.out.println("json数据: " + json);
        JSONArray array = JSONArray.fromObject(json.get("trans_result"));
        System.out.println(array);
        JSONObject ob  = (JSONObject) array.get(0);
        String  name= ob.getString("dst");//name这里是列名称,获取json对象中列名为name的值



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值