0

我正在一个具有 SAP RFC 的应用程序中工作,该应用程序将 doc 文件作为 XSTRINGs 返回。还有一个用 python 编写的客户端应用程序,它向 SAP RFC 发送请求以获取 doc 文件。所以我的问题是,在 python 中,我如何将 XSTRING 转换为 doc 文件?

响应头的内容类型是application/msword; and charset=utf-8

4

1 回答 1

1

这个答案是由 OP 在他自己的问题中给出的,所以我把它移到这里以符合 StackOverflow 原则。

回答我自己的问题:

即使 SAP RFC 返回类型为 的变量xstring,Python 也会以 base64 格式接收它。为了将base64字符串转换为doc,首先我解码了base64字符串,它给了我RTF输出。然后我将 RTF 字节写入.rtf文件。RTF 文件可以从大多数文字处理工具中打开。因此,我能够.rtf从文字处理工具打开文件。

以下是我为转换编写的代码:

    from base64 import b64decode

    base64_resp = response_json['data']
    bytes_rtf = b64decode(base64_resp, validate=True)

    f = open(rtf_filename, 'wb')
    f.write(bytes_rtf)
    f.close()
于 2020-01-09T10:48:29.317 回答