我们有一个供应商,我们发送服务电话,他们生成PDF文档并将其作为Base64编码字符串返回给我们。 然后,我们需要完全按原样获取此值,并将其发送到发送附带PDF的电子邮件的辅助服务。
问题是他们为第一个服务发送给我们的WSDL将返回字段定义为字节数组,我似乎找不到将精确值用作字符串的方法。
有没有办法获取字段中的确切值并将其作为字符串值返回,而不尝试转换为可读文本?
示例字符串(我显然无法附加PDF编码的字符串,因为它很大):
<ifx:BinData>QmFzZTY0U3RyaW5n</ifx:BinData> //This is the value "Base64String" encoded as base64.
预期产出:
值为“QmFzZTY0U3RyaW5n”的字符串变量。
我尝试过的每一种方式都会导致我使用解码后的值获取字符串:“Base64String”。
我尝试了以下内容:
Arrays.toString(inputField)
Base64.getEncoder().encodeToString(inputField) //This double encoded my field
。
Looping through byte array and converting to string
new String(inputField)
提前致谢。