Excel文件(.xlsx
)已上传到UI5 Fiori的前端。
文件内容通过OSTR以XSTRING格式到达SAP ABAP后端。
我需要将该XSTRING存储到内部表中,然后存储在DDIC表中。例如:假设Excel有5列,那么我想将5列的数据存储在DDIC表的相应列中。
我尝试了各种功能模块,例如:
及以下类和方法:
但是没有人能够将XSTRING转换为STRING。
您能否建议可以使用哪个功能模块或类/方法来解决问题?
为了获得最大的舒适度,请使用abap2xlsx。
如果您不能或不想使用它,则可以选择自己解析Excel文件。 .xlsx文件基本上是.zip文件,但文件结尾不同。使用cl_abap_zip->load
打开收到的xstring
,然后使用->get
从zip提取单个文件。然后,使用XML解析器(例如cl_ixml
或转换)来解析文件的XML内容。
请注意,Excel的XML是一种复杂的文件格式,其中有几个文件可以一起构成工作表。有关详细信息,请参见Microsoft的File format reference for Word, Excel, and PowerPoint。解释这一点并非易事,因此使用abap2xlsx通常会更快乐。