用于xml到json的Groovy脚本

2020-09-04 14:14发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我有以下要求

 
 <物品>
 
  4563 
  3 
  100.00 
 
 
  5553 
  2 
  90.00 
 
 
 
 

需要转换为以下响应:

 
 成功
 <响应> {
  " ITEMS":{
    " ITEM":[
      {
        " DOC":" 4563",
        " QTY":" 3",
        " AMT":" 100.00"
      },
      {
        " DOC":" 5553",
        " QTY":" 2",
        " AMT":" 90.00"
      }
    ]
  }
 } 
 
 

尝试使用以下常规方法,但似乎无济于事,不知道问题出在哪里。 在此方面的任何帮助都将不胜感激:

 def已解析=新的XmlSlurper()。parseText(input)def映射= [(parsed [0] .name):已解析。'**'。  findAll {it.name()=='ITEM'}。  collect {row-> row.collectEntries {[KEY:row.id.text(),VALUE:row.value.text()]}}] 

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我有以下要求

 
 <物品>
 
  4563 
  3 
  100.00 
 
 
  5553 
  2 
  90.00 
 
 
 
 

需要转换为以下响应:

 
 成功
 <响应> {
  " ITEMS":{
    " ITEM":[
      {
        " DOC":" 4563",
        " QTY":" 3",
        " AMT":" 100.00"
      },
      {
        " DOC":" 5553",
        " QTY":" 2",
        " AMT":" 90.00"
      }
    ]
  }
 } 
 
 

尝试使用以下常规方法,但似乎无济于事,不知道问题出在哪里。 在此方面的任何帮助都将不胜感激:

 def已解析=新的XmlSlurper()。parseText(input)def映射= [(parsed [0] .name):已解析。'**'。  findAll {it.name()=='ITEM'}。  collect {row-> row.collectEntries {[KEY:row.id.text(),VALUE:row.value.text()]}}] 
付费偷看设置
发送
3条回答
Violet凡
1楼-- · 2020-09-04 15:12

您好Prabhu

您实际上不需要脚本:

XML到JSON:

< p> Content Modifier:

测试结果:

感谢

Manoj

xfwsx85
2楼-- · 2020-09-04 15:09

如何将节点" ITEMS"(在这种情况下为0 ... unb)映射为常规函数作为字符串。 整个ITEMS xml都将以字符串数据的形式映射到该函数

compass1988
3楼-- · 2020-09-04 15:04

通过创建additionla xsd和映射,您的确切含义是什么? 即使使用脚本,您最终也会得到相同的输出。 只是想详细了解您的要求。

一周热门 更多>