Java中实现PDF文件转二进制流

加入相关依赖

<!-- https://mvnrepository.com/artifact/pdfbox/pdfbox -->
<dependency>
    <groupId>pdfbox</groupId>
    <artifactId>pdfbox</artifactId>
    <version>0.7.3</version>
</dependency>

演示:

import org.pdfbox.pdfparser.*;
import org.pdfbox.util.PDFTextStripper;
import java.io.*;  

public class TestPdf {
  public static void main(String[] args) throws Exception {
          //从文件地址读入PDF文件
          FileInputStream fis = new FileInputStream("c:\\intro.pdf");
          PDFParser p = new PDFParser(fis);
          p.parse();
          PDFTextStripper ts = new PDFTextStripper();
          //生成文件的二进制流
          String s = ts.getText(p.getPDDocument());
          //打印文件流
          System.out.println(s);
          fis.close();
  }
}
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以通过以下步骤实现: 1. 在后台接收到pdf二进制文件后,将其保存为byte[]数组。 2. 将byte[]数组换为InputStream对象。 3. 使用PdfBox库(或其他pdf处理库)将InputStream对象换为PDF文档对象(PDDocument)。 4. 根据需要,对PDF文档进行修改(例如添加水印、修改内容等)。 5. 将修改后的PDF文档保存到本地文件系统。 下面是一个简单的Java代码示例,演示如何将接收到的pdf二进制文件保存到本地: ```java import org.apache.pdfbox.pdmodel.PDDocument; import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; public class PdfFileHandler { public void savePdf(byte[] pdfBytes, String savePath) throws IOException { // 将byte[]数组换为InputStream对象 InputStream inputStream = new ByteArrayInputStream(pdfBytes); // 使用PdfBox库将InputStream对象换为PDDocument对象 PDDocument document = PDDocument.load(inputStream); // 将PDDocument对象保存为本地文件 document.save(new File(savePath)); // 关闭PDDocument对象 document.close(); } public static void main(String[] args) throws IOException { byte[] pdfBytes = // 从请求获取pdf二进制文件 String savePath = "C:/temp/test.pdf"; // 保存路径 PdfFileHandler handler = new PdfFileHandler(); handler.savePdf(pdfBytes, savePath); } } ``` 请注意,本示例仅演示了最基本的保存操作。在实际使用,您可能需要根据具体的需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值