将 XML 转换为 JSON

Converting XML to JSON

我正在尝试将 XML 文件转换为 String 类型的内部 table。 有没有把XML数据转成JSON格式的功能模块?

据我所知,没有标准的功能模块或方法调用可以自动将 XML 转换为 JSON。如果您只有一个文件,那么网上有几个转换器。如果您必须使用 ABAP 解决这个问题,您将不得不制定自己的解决方案或在线破解一些示例程序。

如果您选择自己编写程序,请考虑在 STRANS 事务中创建一个转换,将您的 XML 数据转换为 JSON-XML data, and use a JSON writer 以将其写入 JSON .

这个答案主要是 Horst Keller's post on the matter 的释义。他发布了一个示例程序,但您的里程可能会有所不同。

使用ABAP 简单转换或XSLT 转换只是一种选择。您还可以在 ABAP 代码中完全实现转换,例如有:

  1. 使用CALL TRANSFORMATION id SOURCE XML <xml as string> RESULT <root node> = <itab>.参考ABAP keyword documentation

  2. 使用class/method/ui2/cl_json=>deserialize=>serialize

  3. 使用classcl_ixml:see Parsing an XML document DOM-based and Parsing an XML document event-based