方法一:
data: json_ser type ref to cl_trex_json_serializer.
create object json_ser
exporting
data = ev_output.
call method json_ser->serialize.
call method json_ser->get_data
receiving
rval = ev_json.
方法二:ev_json = /ui2/cl_json=>serialize( data = ev_output
pretty_name = /ui2/cl_json=>pretty_mode-low_case ).
其中使用方法一時,如果在ev_output中含有的特殊字符“&”的話,轉成JSON之後“&”符號前面會被加上轉義符號“\”(可能是因爲“&”是ABAP語法中的關鍵字之類的,暫時未發現其他特殊字符會有這樣的現象),導致有時候與其他系統交互時可能會報錯(原因可能是&原本不需要轉義符號),另外,bool類型的字段值會被轉成''(FALSE)和‘X’(TURE),第二種方法則不會轉換bool類型字段的值(保留原來的false 和ture)。