使用FTP_SERVER_TO_R3从FTP读取XML文件

2020-08-25 05:53发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


使用FTP_SERVER_TO_R3从FTP读取XML文件,在文本内容数据中获取#个字符

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


使用FTP_SERVER_TO_R3从FTP读取XML文件,在文本内容数据中获取#个字符

付费偷看设置
发送
6条回答
落灬小鱼
1楼-- · 2020-08-25 06:01

嗨。

似乎两个字符。

我建议您将g_t_xml_tab的内容放在xstring字段(cv_string)中。

之后 会在字符串字段(lv_xml_string)中转换此内容

最后创建您的文件。

希望对您有所帮助


   呼叫方法cl_abap_conv_in_ce =>建立
     出口
       input = cv_string"(带有XML的Xstring变量)
     接收
       转换= lr_conv。

   呼叫方法lr_conv->读取
     输入
       数据= lv_xml_string。  "(带有XML编码UTF-8的字符串变量)


 *使用UTF-8编码写入新文件


   OPEN DATASET f_filen用于以文本模式输出的编码UTF-8忽略转换错误。

   检查sy-subrc EQ 0。

   将lv_xml_string传输到f_filen。

   CLOSE DATASET f_filen。
三十六小时_GS
2楼-- · 2020-08-25 06:06

为什么#不能为实际值? #而不是什么?

可能是您使用错误的代码页阅读的。 文件的原始代码页是什么? 您可以使用二进制模式+ BLOB读取文件,然后使用正确的代码页对文本进行解码...

haha101010
3楼-- · 2020-08-25 06:05

我们看到的似乎是UTF-16LE编码(AKA代码页)。 首字符,但内容以UTF-8表示。 因此,也许现实是原始文件完全是UTF-8,而FTP_SERVER_TO_R3则将转换为您的SAP系统代码页(这将是UTF-16LE;请使用事务代码SNLS进行检查)。

因此,如果 您以二进制模式读取文件(因此这些字节将是UTF-8编码的文本;使用BLOB并将字节行连接到xstring变量中),然后将其从UTF-8转换为文本(参见Roberto答案,或者简单地 使用:

 string = CL_ABAP_CODEPAGE => CONVERT_FROM(xstring)。"默认情况下为UTF-8 

(如果您有7.53,则是最新的CL_ABAP_CONV_CODEPAGE)

打个大熊猫
4楼-- · 2020-08-25 06:04

桑德拉,你好

实际文件没有#字符,是从FTP服务器读取后得到的。

"ÿþ<#?#x#m#l##v#e#r#s#i#o#n#=#"#1#。#0#"##e#n#c#o #d#i#n#g#=#"#U#T#F#-#8#" <"

我试图直接在ABAP中使用FTP_SERVER_TO_R3字符模式从FTP读取XML文件,还尝试了BLOB但无法解码文本并且不能进行XML解析。

本地计算机上的同一文件运行正常。

请提出建议。

谢谢

HCG

宇峰Kouji
5楼-- · 2020-08-25 06:12

我的代码

1。 使用HTTP_SCRAMBLE

2。 使用FTP_CONNECT

3。 使用FTP_COMMAND>在

上设置为被动

4。 使用FTP_COMMAND> CD

5。 使用FTP_COMMAND> LS

6。 使用

读取XML

呼叫功能'FTP_SERVER_TO_R3'
导出
句柄= w_hdl
fname = w_path
character_mode ='X'
TABLES
text = g_t_xml_tab
例外情况
tcpip_error = 1
command_error = 2
data_error = 3
其他= 4。

带有#字符的g_t_xml_tab和内容数据。 请提出建议。

compass1988
6楼-- · 2020-08-25 06:11

嗨,我使用的代码与您相同,但是我根本无法读取xml文件(结果表为空)。 在您的情况下,w_path是" File_name.xml"吗?

一周热门 更多>