微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

abap txt文件导入生成json

ABAP是SAP系统中的一种编程语言,可以用于创建和管理企业资源计划系统。在SAP系统的开发过程中,经常需要使用txt文件来进行数据交换,而生成JSON格式的数据则可以使数据传输更加便捷。在ABAP中,我们可以使用以下代码将txt文件导入并生成JSON格式:

*&---------------------------------------------------------------------*
*& Report Z_IMPORT_TXT_TO_JSON
*&---------------------------------------------------------------------*

REPORT z_import_txt_to_json.

DATA: lv_filename  TYPE string VALUE 'C:\data.txt',lv_json_data TYPE string.

ParaMETERS: p_file TYPE rlgrap-filename OBLIGATORY.

*IMPORT data from txt file
DATA lt_raw_data TYPE STANDARD TABLE OF string.
CALL FUNCTION 'GUI_UPLOAD'
  EXPORTING
    filename             = p_file
  IMPORTING
    filelength           = DATA(lv_file_len)
  TABLES
    data_tab             = lt_raw_data
  EXCEPTIONS
    file_open_error      = 1
    file_read_error      = 2
    no_batch             = 3
    gui_refuse_filetransfer = 4
    invalid_type         = 5
    no_authority         = 6
    unkNown_error        = 7
    header_not_allowed   = 8
    separator_not_allowed = 9
    header_too_long      = 10
    unkNown_dp_error     = 11
    access_denied        = 12
    dp_out_of_memory     = 13
    disk_full            = 14
    dp_timeout           = 15
    not_supported_by_gui = 16
    error_no_gui         = 17
    OTHERS               = 18.

*Convert to JSON format
DATA lt_json_data TYPE STANDARD TABLE OF string.
LOOP AT lt_raw_data INTO DATA(lv_raw_line).
  SPLIT lv_raw_line AT ';' INTO TABLE DATA(lt_fields).
  DATA(ls_json_data) = VALUE #( field1 = lt_fields[ 1 ]
                                   field2 = lt_fields[ 2 ] ).
  APPEND cl_abap_conv_in_ce=>utf8_to_xstring(
                          cl_sxml_string_writer=>serialize(
                            data = ls_json_data ) ) TO lt_json_data.
ENDLOOP.

CONCATENATE '[' lt_json_data ']' INTO lv_json_data.

cl_demo_output=>display_data( lv_json_data ).

*

abap txt文件导入生成json

以上代码中,我们使用了GUI_UPLOAD函数将txt文件导入,并使用SPLIT函数文件内容分割成表格形式。然后,我们通过循环将每一行数据转化为一个JSON对象,并使用cl_sxml_string_writer类中的serialize函数将其序列化为一个字符串。最后,我们将所有的JSON字符串拼接成一个完整的JSON数组。

生成JSON格式的数据将会更好地适应各种数据传输需求。在ABAP中,我们可以使用类似的方法将其他数据格式转化为JSON,以满足各种业务需求。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐