如何解决使用PDFBox保存方法将文件上传到SFTP服务器而不将文件存储到本地系统?
我正在尝试将我从远程服务器获取的编辑后的 PDF 保存回其位置,而无需将其下载/存储在本地计算机上。我正在使用 JSch SFTP 方法使用
从 SFTP 服务器获取输入的 PDF 文件x = new BufferedInputStream(channelSftp.get("example.pdf"));
PDDocument document = PDDocument.load(x);
在使用 PDFbox 进行一些编辑后,我尝试使用以下方法保存它:
documents.save(new File("ftp/path/location"));
我不能,因为我知道它只适用于您的本地目录。我也可以看到 document.save
接受 OutputStream` 参数,但我不知道如何在这里使用它。
我在使用流阅读器获取输入时没有任何问题。 我所需要的只是将编辑过的 PDF 保存回其位置(可能替换),而无需将其下载到我的本地系统上。
解决方法
使用 ChannelSftp.put
overload that returns OutputStream
:
try (OutputStream out = channelSftp.put("example.pdf")) {
documents.save(out);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。