`
JerryWang_SAP
  • 浏览: 1030527 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

如何使用ABAP代码反序列化JSON字符串成ABAP结构

阅读更多

假设我有这个JSON字符串如下图所示:

 

 

我的任务是解析出上图黑色方框里的几个字段,比如ObjectID, ETag, BuyerID, DateTime, ID, Name等等,把它们的值存储到对应ABAP变量里。

下面是ABAP解析方案。

  1. 首先定义一个ABAP结构,包含需要解析的几个字段。
TYPES: BEGIN OF ty_header,
objectid TYPE string,
buyerid  TYPE string,
datetime TYPE string,
id       TYPE string,
name     TYPE string,
END OF ty_header.

然后定义一个ABAP结构,字段名为results,对应本文截图里加了红色下划线的json字符串中的results字段,类型为刚刚定义的ty_header:

TYPES: BEGIN OF ty_result,
results TYPE ty_header,
END OF ty_result.

同样,再定义一个ABAP结构ty_d:

TYPES: BEGIN OF ty_d,
d TYPE ty_result,
END OF ty_d.

总之,ABAP里定义的结构,其字段名和层次结构必须和JSON字符串一致。

  1. 定义一个ABAP变量用于存储反序列化结果,类型为步骤一的ty_d:
DATA: ls_data TYPE ty_d.

WRITE:/ lv_response.

CALL METHOD /ui2/cl_json=>deserialize
EXPORTING
json = lv_response
CHANGING
data = ls_data.

执行上述代码,发现反序列化成功:

 

 
 
 

 

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

 
0
0
分享到:
评论

相关推荐

    ABAP常用字符串操作

    ### ABAP常用字符串操作知识点详解 #### 一、字符串连接 ...以上是ABAP中常用的字符串操作方法,涵盖了连接、分隔、查找、替换、格式调整等各个方面,对于编写高效且易于维护的ABAP代码至关重要。

    ZUI2_JSON2_/UI2/CL_JSON_ui2/cl_json_abap_Ui2_cl_json_zui2_json_源

    接下来,我们可以使用/UI2/CL_JSON的`DESERIALIZE`方法将JSON字符串转换为ABAP数据结构: ```abap DATA lo_json_converter TYPE REF TO /ui2/cl_json. DATA lv_json_string TYPE string VALUE '{"name":"John","age...

    ABAP字符串SQL Functions语法总结

    总之,ABAP SQL Functions提供了一套丰富的工具来处理字符串,无论是连接、查找、截取还是格式化,都能让开发工作变得更加便捷。通过熟练运用这些函数,你可以编写出更高效、更易读的ABAP代码。

    abap字符串操作

    包括abap低于字符串的操作相关示例代码

    ABAP json 相同解析类

    - `READ_JSON`方法用于从JSON字符串中读取数据,返回一个结构化的ABAP内表。 - `WRITE_JSON`方法则用于将ABAP数据结构转换为JSON字符串。 - `IS_JSON`函数可以用来验证一个字符串是否符合JSON格式。 在实际应用...

    ABAP常用字符串操作收集整理

    ABAP 中的字符串操作是开发者日常工作中不可或缺的一部分,本文将对 ABAP 中常用的字符串操作进行收集和整理,包括字符串连接、字符串分隔、字符串查找、字符串替换、去前导 0 等操作。 1. 字符串连接 CONCATENATE...

    SAP ABAP 代码备份下载到本地程序代码

    SAP ABAP 代码备份下载到本地程序代码

    ABAP JSON 字段名映射 name_mappings 大写 小写 驼峰.txt

    ABAP JSON 字段名映射 name_mappings支持字段名大写,小写,驼峰等。 完整代码,可以直接运行。

    abap处理字符串[参考].pdf

    ABAP处理字符串 在ABAP中,字符串处理是非常重要的一部分,今天我们将学习ABAP中处理字符串的各种方法。 一、移动字段内容 ABAP中移动字段内容有多种方法,下面我们将分別介绍。 1、按给定位置数移动字符串 ...

    ABAP代码性能指导

    - **使用CASE-ENDCASE而非IF-ENDIF**:使用`CASE-ENDCASE`结构可简化代码并提高性能。 - **优化变量赋值**:在变量赋值时,尽可能使用`MOVE ato b`而不是`MOVE-CORRESPONDING`,以减少不必要的赋值操作。 - **表间...

    ABAP OLE颜色代码

    ABAP OLE 颜色代码是指在 ABAP 编程语言中使用的颜色代码。这些代码用于在用户界面中显示不同的颜色,例如背景颜色、文字颜色、按钮颜色等。 在 ABAP 中,颜色代码通常以 šestnaestkovo (hexadecimal) 编码表示,...

    JSON2ABAPType:基于JSON结构的ABAP类型的创建者

    JSON2ABAPType 解决了这个问题,它能够分析JSON字符串或文件,并生成相应的ABAP数据类型定义(DDIC structures),使得ABAP程序可以更方便地读取、解析和存储JSON数据。 这个工具的使用流程大致如下: 1. **输入...

    ABAP 代码下载备份 1.5.1

    ABAP 代码下载备份 1.5.1

    ABAP GIT 项目 AI SDK FOR ABAP 代码

    6. **示例和教程**:aisdkforsapabap-main可能是包含SDK的示例代码或教程的目录,它可能提供了如何在实际项目中使用AI SDK for ABAP的步骤和示例。 通过这个项目,开发人员可以学习如何在SAP ABAP环境中利用AI技术...

    abap代码规范手册

    通过对上述示例代码的分析,我们可以看到一个典型的ABAP程序结构,包括报告声明、表格定义、内部表及工作区的使用、选择屏幕的设计以及初始化过程等。这些内容都是编写ABAP程序时需要遵循的基本规范之一。对于初学者...

    abap代码检查规范

    abap代码规范,高效abap、modern abap

    判断一个字符串或字符串中的一个字符是否为数字类型

    注意,`isNaN()` 会将字符串尝试转换成数值,所以 `"123abc" 也会被判断为数字,因为前三个字符是数字。 3. **Java** Java 提供了 `Character.isDigit()` 和 `Integer.parseInt()` 来判断单个字符或整个字符串。...

    abap处理字符串[借鉴].pdf

    理解并熟练掌握这些字符串处理方法对于编写高效的ABAP代码至关重要,它们在数据处理、文本分析和用户界面交互等场景中都有广泛应用。在实际编程中,可以根据需求灵活运用这些语句,以实现字符串的精确操作和管理。

    ABAP代码规范二例

    ABAP代码规范二例 内容节选: ******************************** 变量命名规则 Type Name:T_ Internal tables (global): gt_ Internal Tables (Local):it 工作区(structure): wa_ 全局变量: g_ 局部变量: l_ Ranges ...

    SAP ABAP 1.4.4代码下载

    ABAP的语法结构主要基于结构化编程,支持面向过程和面向对象编程。在1.4.4版本中,可能引入了新的编程元素或API,使得开发者能更高效地处理数据和业务流程。例如,可能增加了新的类、接口或方法,以方便与数据库交互...

Global site tag (gtag.js) - Google Analytics