SAP 結構/內表 轉成JSON字符串的兩種方法

方法一:

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)。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章