我使用abap方法创建JSON。
例如:
DATA(lo_json_writer) = cl_sxml_string_writer=>create( type = if_sxml=>co_xt_json ).
CALL TRANSFORMATION id
SOURCE result = result
RESULT XML lo_json_writer.
cl_abap_conv_in_ce=>create( )->convert(
EXPORTING
input = lo_json_writer->get_output( )
IMPORTING
data = json ).
我应该为json使用哪种数据类型?
使用string
还是xstring
?
答案 0 :(得分:4)
没有“好方法”。每种解决方案都有优点和缺点。
如果您的数据主要包含“拉丁”字符,则使用具有UTF-8编码的xstring
,它将占用更少的内存。
xstring
,采用UTF-8编码:一个字节用于普通AZ / az / 0-9字符,两个字节用于强调字符,其他字节用于其他语言(中文等)字符。string
:每个字符两个字节(编码类似于UCS-2
),因为所有ABAP系统现在都是Unicode(ABAP> = 7.50)。答案 1 :(得分:2)
根据此blog-entry(https://blogs.sap.com/2013/01/07/abap-and-json/):“为了将XML数据存储在字符串或内部表中,建议您使用字节字符串或类似字节的线型。”因此,我将使用xstring。>