获取的string转JSONArray或JSONObject

获取的string转JSONArray或JSONObject² 返回值:JSON格式字符串{“serviceId”:”3c.park.queryparkstandard”,”resultCode”:0,”message”:”成功”,”dataItems”:[{“objectId”:””,”operateType”:”READ”,”attributes”:{“parkCode”:”park01″,

大家好,又见面了,我是你们的朋友全栈君。

停车场收费标准典型案例:

² 返回值:JSON格式字符串

{

“serviceId”:”3c.park.queryparkstandard“,

“resultCode”:0,

“message”:”成功“,

“dataItems”:[{

“objectId”:””,

“operateType”:”READ”,

“attributes”:{

“parkCode”: “park01”,

                     “parkName”: “KKMALL_PARK”,

                     “tempStandard“: “临时卡收费标准说明“

},

“subItems”: [

                {

“objectId”: “”,

                    “operateType”: “READ”,

                    “attributes”: {

“cardType”: “月卡A“

                    },

“subItems”: [

{

         “objectId”: “”,

                             “operateType”: “READ”,

                             “attributes”: {

“monthPeriod“:1,

“money“:150

                            },

“subItems”: []

}

]

                 },

{

“objectId”: “”,

                    “operateType”: “READ”,

                    “attributes”: {

“cardType”: “月卡B“

                    },

“subItems”: [

{

         “objectId”: “”,

                             “operateType”: “READ”,

                             “attributes”: {

“monthPeriod“:1,

“money“:100

                            },

“subItems”: []

}

]

                 }

           ]

}]

}

获取的string转JSONArray或JSONObject

获取的string转JSONArray或JSONObject


下面获得dataItems的内容,及转换

String jsonString= queryParkStandardServices.execute(params,type);

JSONObject jsonobject=new JSONObject();
jsonobject.put(“json0”, jsonString);//如果String是[{},..]这种形式的,可以形成一个新的单json   {json0:…}
System.out.println(“_________0824———-“+jsonString);
JSONArray jsonarray=new JSONArray();
jsonarray.add(jsonobject);//如果jsonobject里的value是{json0:[{},..]}这种形式的就用JSONArray来承接


JSONObject obResult =  (JSONObject) jsonarray.get(0);

JSONArray    jsonarray01=obResult.getJSONArray(“json0”);

JSONObject json01 =  (JSONObject) jsonarray01.get(0);


JSONObject partone=json01.getJSONObject(“attributes”);
String   parkCodes =(String) partone.get(“parkCode”);//停车场编号
String   parkName=(String) partone.get(“parkName”);//停车场名字
String   tempStandard=(String) partone.get(“tempStandard”);//临时卡收费说明

JSONArray parttwo=json01.getJSONArray(“subItems”);






 


List<FeeStandard> FeeStandards=new ArrayList<>();


for(int i=0;i<parttwo.size();i++){


FeeStandard feeStandard=new FeeStandard();


feeStandard.setParkCode(parkCodes);


feeStandard.setParkName(parkName);


feeStandard.setTempStandard(tempStandard);


JSONObject obResult2 = new JSONObject();


obResult2=
(JSONObject) parttwo.get(i);



JSONObject
attributes=(JSONObject) obResult2.get(“attributes”);


String cardType0=(String) attributes.get(“cardType”);//月卡类型








JSONArray
subItems= (JSONArray) obResult2.getJSONArray(“subItems”);





JSONObject subItems0 = (JSONObject) subItems.get(0);





JSONObject  attributes1=(JSONObject) subItems0.get(“attributes”);





int monthPeriod0=(int) attributes1.get(“monthPeriod”);//月卡收费周期


Double money0=(Double) attributes1.get(“money”);//月卡收费标准





feeStandard.setCardType(cardType0);


feeStandard.setMoney(money0);


feeStandard.setMonthPeriod(monthPeriod0);


FeeStandards.add(feeStandard);





}

注:JSONObject  和JsonObject 都是json对象,但获取对象里面元素是需要用不同对象来承接。

                          String results = EntityUtils.toString(response.getEntity());
JsonObject json=new JsonParser().parse(results).getAsJsonObject();
int resultCode=json.get(“resultCode”).getAsInt();
if(resultCode==0){

JsonElement dataItems=json.get(“dataItems”);

                             } 

JsonObject get到的元素用JsonElement 来承接。

             JSONObject partone=json01.getJSONObject(“attributes”);
String orderNo=(String) partone.get(“orderNo”);//订单编号
String carNo1=(String) partone.get(“carNo”);//车牌号
String totalFee=(String) partone.get(“totalFee”);//总费用

JSONObject get到的元素用String来承接。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151417.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • IDEA 打不开怎么办 ?「建议收藏」

    IDEA 打不开怎么办 ?「建议收藏」IDEA打不开怎么办?系统win10IDEA2020.1.3使用chooseruntime插件修改运行环境后无法启动IDEA一、修改运行环境导致的(例如:将原本jre8修改为本地的jre11出现了问题)1、搜索idea64.exe.jdk文件。2、找到你本地原来使用的官方jre,本文本地安装的是D:\Java\jdk1.8.0_181\jre。3、将idea64.exe.jdk文件中内容修改为官方可用的。例如:将D:\Java\jdk-11.0.2\bin\

    2022年8月30日
  • dotnet publish 不生成pdb文件

    dotnet publish 不生成pdb文件文章目录引言解决方案直接修改`.csproj`文件通过vs修改引言随着项目的体积越来越大,导致publish的时候文件越来越多,然而生产环境中其实pdb调试文件并没有什么作用(remotedebug)除外,所以也就灵机一动想着是否可以不生成呢?解决方案直接修改.csproj文件<PropertyGroupCondition=”‘$(Configuration)|$(Platform)’==’Release|AnyCPU'”><DebugType>none&lt

    2022年5月11日
  • drone无人机应用_drone无人机教程视频

    drone无人机应用_drone无人机教程视频目录文章目录目录摘要1.增加姿态信息界面2.在activity中显示更新姿态数据摘要本节主要记录打造自己的HelloDrone无人机APP过程《2》—如何获取并且显示姿态信息。1.增加姿态信息界面<?xmlversion=”1.0″encoding=”utf-8″?><ScrollViewxmlns:android=”http://schemas.android.com/apk/res/android”xmlns:tools=”http://schemas.

    2022年8月15日
  • 在线客服系统源码demo/PHP客服系统下载附php源码「建议收藏」

    在线客服系统源码demo/PHP客服系统下载附php源码「建议收藏」在线客服系统软件为每个客户提供个性化的一对一支持。在线客服系统源码安装实时聊天小部件在尽可能多的网站和博客上并可定制聊天小部件完全适合您的网站。从一系列颜色和选项混合搭配。在线客服系统附源码演示及下载地址:ym.ws58.net在线客服系统源码H5通过为常见答案和回复创建快捷方式来节省时间。基于thinkphp在网页线客服完整源码下载地址:ym.ws58.net在聊天室里点击一个按钮就可以看到这些,只需单击一次即可将聊天内容传送到其他代理。团队合作以取悦顾客。实时聊天小部件跟踪访问者浏览您.

    2022年7月19日
  • std::vector初始化[通俗易懂]

    std::vector初始化[通俗易懂]#include<iostream>#include<stdint.h>#include<vector>usingnamespacestd;intmain(){ std::vector<uint8_t>temp0(0,0); cout<<“vectorsize:”<<temp0.size()<<endl; std::vector<uint8_t>temp1(.

    2022年9月16日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号