实现思路:

1,由于现有的插件读取word的页数不是很准确,于是将word文件转换为PDF文件

2,读取PDF文件的页数以获取word文件的页数

需要的插件:链接:https://pan.baidu.com/s/1GTk890eKl1D4Izk03kyPPg 
提取码:6535

1,word文件转PDF文件的插件 SaveAsPDFandXPS.exe

2,jacob插件  jacob dll文件以及jar包

3,itextpdf jar包

实现过程:

1,在Windows环境下安装word文件,不是WPS

2,安装SaveAsPDFandXPS

3,把dll文件放在Java的运行环境,jre的bin目录下,为了防止报错,JDK的bin目录下也放一个,注意与自己的电脑匹配就行(32位还是64位)

4,Java 运行环境1.7以上

5,创建Java Project,将itextpdf和jacob的两个jar包复制进去

6,word转换PDF的代码是:

package javaReadWordPage;import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import org.omg.PortableInterceptor.DISCARDING;import java.io.File;/*** 该方法实现word文件转换成PDF文件的功能*/
public class Word2PdfUtil {static final int wdDoNotSaveChanges = 0;static final int wdFormatPDF = 17;public static boolean word2pdf(String source,String target){System.out.println("word 转PDF开始启动.....");long start = System.currentTimeMillis();ActiveXComponent app = null;try{app = new ActiveXComponent("word.Application");app.setProperty("Visible",false);Dispatch docs = app.getProperty("Documents").toDispatch();System.out.println("打开文档.....");Dispatch doc = Dispatch.call(docs, "Open", source, false, true).toDispatch();System.out.println("转换成PDF文件......"+target);File toFile = new File(target);if(toFile.exists()){toFile.delete();}Dispatch.call(doc,"SaveAs",target,wdFormatPDF);Dispatch.call(doc,"Close",false);long end = System.currentTimeMillis();System.out.println("文件转换用时:"+(end-start)+"ms");return true;}catch(Exception e ){System.out.println("word 转换 PDF 出错:"+e.getMessage());return false;}finally {if(app != null){app.invoke("Quit",wdDoNotSaveChanges);}}}
}

7,读取PDF文件页码的代码是:

package javaReadWordPage;import com.itextpdf.text.pdf.PdfReader;import java.io.File;/*** 该方法实现的是查看PDF文件页数的功能*/
public class GetPdfPageNumber {public static int getPdfPage(File file){int pageCount = 0;PdfReader reader;try {reader = new PdfReader("e://论证报告.pdf");pageCount = reader.getNumberOfPages();}catch (Exception e){e.printStackTrace();}System.out.println(pageCount);return pageCount;}
}

8,测试

本篇文章学习于java准确读取word文件页数_天地炫舞的博客-CSDN博客

Java 读取word文件的页数相关推荐

  1. Java读取word文件,字体,颜色

    在Android读取Word文件时,在网上查看时可以用tm-extractors,但好像没有提到怎么读取Word文档中字体的颜色,字体,上下标等相关的属性.但由于需要,要把doc文档中的内容(字体,下 ...

  2. java读取word文件并设置其字体样式_Java读取word文件,字体,颜色(示例代码)

    在Android读取Word文件时,在网上查看时可以用tm-extractors,但好像没有提到怎么读取Word文档中字体的颜色,字体,上下标等相关的属性.但由于需要,要把doc文档中的内容(字体,下 ...

  3. java读取csv文件的行数_JMeter 读取 CSV 文件数据行数

    在用 JMeter 做测试时,经常需要调用外部 CSV 文件的数据到脚本中使用,如果我们想对 CSV 文件中数据的行数进行统计,这个怎么做呢? 针对上面表格的数据,我们一起来学习一下如何统计数据行数吧 ...

  4. Java读取txt文件指定行数

    使用BufferedReader:  BufferedReader继承了Reader,提供通用的缓冲方式文本读取,而且提供了很实用的readLine方法,读取一行内容 import java.io.B ...

  5. java准确读取word文件页数

    转自:https://blog.csdn.net/tiandixuanwuliang/article/details/71298406 由于本人在做一个网上打印网站,遇到了一个需求是"准确读 ...

  6. Java获取文档页数_java准确读取word文件页数

    由于本人在做一个网上打印网站,遇到了一个需求是"准确读取word文件页数,从而实现计费功能",通过很长时间的学习.查资料后,终于解决了这个问题,因此把方法写出来,方便有同样需求的人 ...

  7. Java 读取 Word文档的字体、字号、文字颜色、文字背景、文字是否加粗或倾斜、文字下划线、段落等属性

    Work库:free spire.doc.jar 3.9.0 由于这个包比较大,maven依赖容易下载失败,故此提供百度云下载地址,下载地址在最下面         可支持读取字体.字号.文字颜色.文 ...

  8. python获取word页数_python,_如何在 Linux 上使用 Python 读取 word 文件信息(如页数)?,python - phpStudy...

    如何在 Linux 上使用 Python 读取 word 文件信息(如页数)? R.T. doc 是二进制文件,Python 如何进行读取呢? .docx 可用 python-docx 读取,但如何读 ...

  9. java操作office和pdf文件java读取word,excel和pdf文档内容

    在平常应用程序中,对office和pdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中.所以今天我们就简单来看一下Java对word.excel.pdf文件的读取.本篇博客只是讲解简单应 ...

最新文章

  1. pci数据捕获和信号处理 感叹号_大学毕业设计一席谈之十五 扩频信号的捕获 (1)...
  2. 网络安全中机器学习大合集 Awesome
  3. Hadoop HA 深度解析
  4. 一个docker镜像中的目录删除不了问题
  5. MySQL中的组函数(聚合函数)
  6. 转 已知两点坐标和半径求圆心坐标程序C++
  7. percona-toolkit工具包安装
  8. VxWorks操作系统
  9. 64位 iee754_IEEE754浮点表示法详解
  10. 用Windows Server 2003配置×××
  11. BGP选择路由的策略
  12. 信用报告OCR服务 助力授信审核快人一步
  13. Navicat Premium 15 工具自动被杀毒防护软件删除解决方法
  14. IIS 405 Method Not Allowed
  15. 剑指Offer读书笔记(持续更新中)
  16. 《爱乐之城》月亮与六便士,你选哪个?
  17. Cool Edit Pro 常用快捷键
  18. php7 扩展 在哪下载,php7.0 redis扩展下载地址
  19. oracle餐厅网络点餐系统_点餐外卖小程序值得搞吗?
  20. [os]os vmware 手机连接

热门文章

  1. Python实训day04am【爬虫介绍、爬取网页测试、Python第三方库】
  2. python word排版_Python控制Word文件中段落格式与文本格式
  3. 灰色预测模型MATLAB代码及使用
  4. SharpDevelop学习笔记(4)——SharpDevelop的核心
  5. jquery实现标签锚定(定位)
  6. CPU中的寄存器和地址概念
  7. GPS授时服务器(时间同步服务器)在机场网络系统中应用
  8. .NET的前景如何?你的问题答案都在这里-2017
  9. 51单片机控制直流电机
  10. 博士毕业评上副教授后,我打算直接躺平!