天天看点

通过输入流获取的xml格式字符串转为json和map格式

通过输入流获取的xml格式字符串转为json和map格式

xml格式字符串转json格式代码:

try {
     		//通过输入流获取xml格式字符串数据
            ServletInputStream inputStream = getActionRequest().getInputStream();
            //或者通过session和request获取
            //ServletInputStream inputStream = getActionRequest().getInputStream();
            //ServletInputStream inputStream = session.getInputStream();
            //ServletInputStream inputStream = request.getInputStream();
            //将流内容转为xml格式
            String xml = IOUtils.toString(inputStream);
            //转为json格式
            JSONObject xmlJSONObj = XML.toJSONObject(xml);
        } catch (Exception e) {
            e.printStackTrace();
        }
           

转换前代码:

xml<?xml version="1.0" encoding="UTF-8"?>
<response version="1.0" systemType="NVMS-9000">  
<status>success</status> 
<content type="list"> 
<item id="08095753-fbb2-4bc1-81c3-54d67ac"/> 
</content>
</response>
           

转换后代码:

xml格式字符串转为map格式代码:

try {
            S//通过输入流获取xml格式字符串数据
            ServletInputStream inputStream = getActionRequest().getInputStream();
            //或者通过session和request获取
            //ServletInputStream inputStream = getActionRequest().getInputStream();
            //ServletInputStream inputStream = session.getInputStream();
            //ServletInputStream inputStream = request.getInputStream();
            String xml = IOUtils.toString(inputStream);
            JSONObject xmlJSONObj = XML.toJSONObject(xml);
            //以上代码同xml格式字符串转json格式
            Gson gson = new Gson();
            //将json直接转为map格式
            HashMap map = gson.fromJson(xmlJSONObj.toString(), HashMap.class);
        } catch (Exception e) {
            e.printStackTrace();
        }
           

转换前代码:

xml<?xml version="1.0" encoding="UTF-8"?>
<response version="1.0" systemType="NVMS-9000">  
<status>success</status> 
<content type="list"> 
<item id="08095753-fbb2-4bc1-81c3-54d67ac"/> 
</content>
</response>
           

转换后代码: