作为客户请求的一部分,我收到了一个 base64 PDF 输入,我需要将此文件转换为文件输入流以与 PDF BOX 库一起使用。我试图在不将文件写入驱动器并直接将 base64 pdf 读入文件输入流的情况下实现此目的。
我能做什么: 将base64编码的pdf转换为文件并写入驱动器 将文件读入文件输入流
我想做的事情: 将 base64 编码的 PDF 转换为文件输入流以与 PDFBOX 一起使用。 我试图避免将文件写入磁盘。
最佳答案
在 pdfbox 中,您可以从 InputStream
加载 pdf。它不需要是FileInputStream
。
使用以下代码,您可以获得解码后的 pdf 的输入流。
注意:根据用于编码 pdf 的方案,您可能需要使用:.getMimeDecoder()
而不是 .getDecoder()
。
InputStream decoded = java.util.Base64.getDecoder().wrap(inputStream);
PDDocument.load(decoded);
关于java - 将base64编码的pdf转换为文件输入流,而不将文件写入系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49688005/