用于XML到JSON转换的Groovy脚本

2020-08-21 00:07发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家您好, 我需要使用Groo...

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

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


专家您好,

我需要使用Groovy脚本来克服Cloud Platform Integration上标准XML to JSON转换器的缺点。

这是我需要获取的输出JSON格式:

 {
 " PO":" test21",
 "项目":[{
 " Id":" 000010",
 "产品":" XXXXX",
 "数量":5
 " Discount_Percent":0,
 "单价":0,
 "药品":错误,
 }]
 } 

但这是我从转换器中收到的:

 {
 " PO":" test21",
 "项目":[{
 " Id":" 000010",
 "产品":" XXXXX",
 "数量":" 5.000",
 " Discount_Percent":" 0.000",
 "单价": "",
 " Pharmaceutical":" false",
 }]
 } 

我不是Groovy专家,并尝试使用SAP注释中提供的内容使用以下groovy将" false"替换为false,但这没用:

导入com.sap.gateway.ip.core.customdev.util.Message;

 def消息processData(消息消息){
 def body = message.getBody(java.lang.String)as String;
 字符串输出= body.replaceAll(" \" false \""," \ $ 1");
 message.setBody(output);
 返回消息;
 }
 

有人可以帮我使用适用于我的常规脚本吗?

感谢您的时间。

阿尼班

6条回答
蓋茨
2020-08-21 01:07

HI,

请检查 您的正则表达式,并按如下所示进行更改:-

字符串输出= body.replaceAll(" \"(false)\""," \ $ 1"); 

"()" =>将多个标记分组在一起,并创建用于提取子字符串的捕获组。

我尝试了相同的操作,但是没有出现任何错误。

输入:-

输出:


正如 Morten Wittrock 所共享的那样,这是将给定字符串强制转换为 各自的类型。

致谢,
Bibhu

一周热门 更多>