假设我有这个JSON字符串如下图所示:
我的任务是解析出上图黑色方框里的几个字段,比如ObjectID, ETag, BuyerID, DateTime, ID, Name等等,把它们的值存储到对应ABAP变量里。
下面是ABAP解析方案。
- 首先定义一个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字符串一致。
- 定义一个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的原创文章,请关注公众号"汪子熙":
相关推荐
### ABAP常用字符串操作知识点详解 #### 一、字符串连接 ...以上是ABAP中常用的字符串操作方法,涵盖了连接、分隔、查找、替换、格式调整等各个方面,对于编写高效且易于维护的ABAP代码至关重要。
接下来,我们可以使用/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代码。
包括abap低于字符串的操作相关示例代码
- `READ_JSON`方法用于从JSON字符串中读取数据,返回一个结构化的ABAP内表。 - `WRITE_JSON`方法则用于将ABAP数据结构转换为JSON字符串。 - `IS_JSON`函数可以用来验证一个字符串是否符合JSON格式。 在实际应用...
ABAP 中的字符串操作是开发者日常工作中不可或缺的一部分,本文将对 ABAP 中常用的字符串操作进行收集和整理,包括字符串连接、字符串分隔、字符串查找、字符串替换、去前导 0 等操作。 1. 字符串连接 CONCATENATE...
SAP ABAP 代码备份下载到本地程序代码
ABAP JSON 字段名映射 name_mappings支持字段名大写,小写,驼峰等。 完整代码,可以直接运行。
ABAP处理字符串 在ABAP中,字符串处理是非常重要的一部分,今天我们将学习ABAP中处理字符串的各种方法。 一、移动字段内容 ABAP中移动字段内容有多种方法,下面我们将分別介绍。 1、按给定位置数移动字符串 ...
- **使用CASE-ENDCASE而非IF-ENDIF**:使用`CASE-ENDCASE`结构可简化代码并提高性能。 - **优化变量赋值**:在变量赋值时,尽可能使用`MOVE ato b`而不是`MOVE-CORRESPONDING`,以减少不必要的赋值操作。 - **表间...
ABAP OLE 颜色代码是指在 ABAP 编程语言中使用的颜色代码。这些代码用于在用户界面中显示不同的颜色,例如背景颜色、文字颜色、按钮颜色等。 在 ABAP 中,颜色代码通常以 šestnaestkovo (hexadecimal) 编码表示,...
JSON2ABAPType 解决了这个问题,它能够分析JSON字符串或文件,并生成相应的ABAP数据类型定义(DDIC structures),使得ABAP程序可以更方便地读取、解析和存储JSON数据。 这个工具的使用流程大致如下: 1. **输入...
ABAP 代码下载备份 1.5.1
6. **示例和教程**:aisdkforsapabap-main可能是包含SDK的示例代码或教程的目录,它可能提供了如何在实际项目中使用AI SDK for ABAP的步骤和示例。 通过这个项目,开发人员可以学习如何在SAP ABAP环境中利用AI技术...
通过对上述示例代码的分析,我们可以看到一个典型的ABAP程序结构,包括报告声明、表格定义、内部表及工作区的使用、选择屏幕的设计以及初始化过程等。这些内容都是编写ABAP程序时需要遵循的基本规范之一。对于初学者...
abap代码规范,高效abap、modern abap
注意,`isNaN()` 会将字符串尝试转换成数值,所以 `"123abc" 也会被判断为数字,因为前三个字符是数字。 3. **Java** Java 提供了 `Character.isDigit()` 和 `Integer.parseInt()` 来判断单个字符或整个字符串。...
理解并熟练掌握这些字符串处理方法对于编写高效的ABAP代码至关重要,它们在数据处理、文本分析和用户界面交互等场景中都有广泛应用。在实际编程中,可以根据需求灵活运用这些语句,以实现字符串的精确操作和管理。
ABAP代码规范二例 内容节选: ******************************** 变量命名规则 Type Name:T_ Internal tables (global): gt_ Internal Tables (Local):it 工作区(structure): wa_ 全局变量: g_ 局部变量: l_ Ranges ...
ABAP的语法结构主要基于结构化编程,支持面向过程和面向对象编程。在1.4.4版本中,可能引入了新的编程元素或API,使得开发者能更高效地处理数据和业务流程。例如,可能增加了新的类、接口或方法,以方便与数据库交互...