我正在将JSON解析为ABAP结构,它的工作原理如下:
DATA cl_oops TYPE REF TO cx_dynamic_check.
DATA(text) = `{"TEXT":"Hello ABAP, I'm JSON!","CODE":"123"}`.
TYPES: BEGIN OF ty_structure,
text TYPE string,
code TYPE char3,
END OF ty_structure.
DATA : wa_structure TYPE ty_structure.
TRY.
text = |\{"DATA":{ text }\}|.
CALL TRANSFORMATION id OPTIONS clear = 'all'
SOURCE XML text
RESULT data = wa_structure.
WRITE: wa_structure-text , wa_structure-code.
CATCH cx_transformation_error INTO cl_oops.
WRITE cl_oops->get_longtext( ).
ENDTRY.
Run Code Online (Sandbox Code Playgroud)
有趣的是,CODE和TEXT区分大小写.对于大多数外部系统而言,拥有所有CAPS标识符都是丑陋的,所以我一直试图解析{"text":"Hello ABAP, I'm JSON!","code":"123"}而没有任何成功.我查看了选项,我看着是否有一个改变后的副本id完成了这个,我用Google搜索并且不知道如何实现这一点.