假设我有这个JSON字符串如下图所示:我的任务是解析出上图黑色方框里的几个字段,比如ObjectID, ETag, BuyerID, DateTime, ID, Name等等,把它们的值存储到对应ABAP变量里。下面是ABAP解析方案。首先
我的任务是解析出上图黑色方框里的几个字段,比如ObjectID, ETag, BuyerID, DateTime, ID, Name等等,把它们的值存储到对应ABAP变量里。
下面是ABAP解析方案。
首先定义一个ABAP结构,包含需要解析的几个字段。
TYPES: BEGIN OF ty_header,objectid TYPE string,buyerid TYPE string,datetime TYPE string,id TYPE string,name TYPE string,END OF ty_header.
然后定义一个ABAP结构,字段名为results,对应本文截图里加了红色下划线的json字符串中的results字段,类型为刚刚定义的ty_header:
TYPES: BEGIN OF ty_result,results TYPE ty_header,END OF ty_result.
同样,再定义一个ABAP结构ty_d:
TYPES: BEGIN OF ty_d,
d TYPE ty_result,
END OF ty_d.
总之,ABAP里定义的结构,其字段名和层次结构必须和JSON字符串一致。
定义一个ABAP变量用于存储反序列化结果,类型为步骤一的ty_d:
DATA: ls_data TYPE ty_d.WRITE:/ lv_response.CALL METHOD /ui2/cl_json=>deserializeEXPORTINGjson = lv_responseCHANGINGdata = ls_data.
执行上述代码,发现反序列化成功:
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
--结束END--
本文标题: 如何使用ABAP代码反序列化JSON字符串成ABAP结构
本文链接: https://www.lsjlt.com/news/234405.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0