您的位置:首页 > 编程语言

基于Maven搭建的Pdf转Word代码参考

2019-02-17 08:27 274 查看

1.首先导入依赖

<dependencies>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.1</version>
</dependency>

<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>fontbox</artifactId>
<version>2.0.4</version>
</dependency>

<dependency>
<groupId>com.levigo.jbig2</groupId>
<artifactId>levigo-jbig2-imageio</artifactId>
<version>2.0</version>
</dependency>

<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>2.0.8</version>
</dependency>

<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox-tools</artifactId>
<version>2.0.8</version>
</dependency>

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>

2. 然后代码测试(代码是参考的)

public class pdfToWordUtil {
@Test
public void test() throws Exception{
String pdfFile = "I:/a.pdf"; // pdf的位置
PDDocument doc = PDDocument.load(new File(pdfFile )); // 加载文件路径
int pagenumber=doc.getNumberOfPages(); // 获取总页数
FileOutputStream fos = null;
try {
fos = new FileOutputStream(pdfFile .substring(0, pdfFile .indexOf("."))+".doc"); // 定义生成word的路径
} catch (FileNotFoundException e) {
e.printStackTrace();
}

Writer writer = null;
try {
writer = new OutputStreamWriter(fos,"UTF-8"); // 文件按字节读取,然后按照UTF-8的格式编码显示
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
PDFTextStripper stripper = new PDFTextStripper(); // 生成PDF文档内容剥离器
stripper.setSortByPosition(true); // 排序
stripper.setStartPage(1); // 设置转换的开始页
stripper.setEndPage(pagenumber); // 设置转换的结束页
try {
stripper.writeText(doc,writer);
writer.close();
doc.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: