我收到了一个 XML 文件,其中包含一个 PDF 附件,编码为Base64
字符串。我正在尝试从中生成一个PDF
文件。以下代码运行良好:
String base64encodedPdf =" .... ";
byte[] imgBytes = javax.xml.bind.DatatypeConverter.parseBase64Binary(base64encodedPdf);
IOUtils.write(imgBytes, new FileOutputStream("C:\\\\test.pdf"));
当附件数据太大而无法直接复制到编辑器时会出现问题,以为我可以将其复制到文本文件并读取文件并转换为String
. 我就是这样做的:
org.apache.commons.io.FileUtils.readFileToString(file, encoding)
我很好奇我应该指定什么UTF-8
编码...... ,为什么?UTF-16
编辑:
这是我可用的元信息
<AttachmentType tc="1">Document</AttachmentType>
<MimeType>application/pdf</MimeType>
<TransferEncodingTypeString>Base64</TransferEncodingTypeString>
<TransferEncodingTypeTC tc="4">Base64</TransferEncodingTypeTC>