当前位置:  开发笔记 > 编程语言 > 正文

java中单词doc中的页数

如何解决《java中单词doc中的页数》经验,为你挑选了4个好方法。

是否有一种简单的方法来计算Word文档的页数是.doc还是.docx?

谢谢



1> Robben_Ford_..:

您可以尝试使用Apache API for word Docs:

http://poi.apache.org/

它作为获取页数的方法:

public int getPageCount()

返回:页面计数,如果SummaryInformation不包含页面计数,则返回 0.



2> Snehal..:

使用Apache POI的SummaryInformation来获取MS Word文档的总页数



3> Diaes..:

我发现了一个非常酷的课程,它可以计算Word,Excel和PowerPoint的页数.借助Apache POI.它适用于旧文档和新docx.

String lowerFilePath = filePath.toLowerCase();
if (lowerFilePath.endsWith(".xls")) {
            HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(lowerFilePath));
            Integer sheetNums = workbook.getNumberOfSheets();
            if (sheetNums > 0) {
                return workbook.getSheetAt(0).getRowBreaks().length + 1;
            }
        } else if (lowerFilePath.endsWith(".xlsx")) {
            XSSFWorkbook xwb = new XSSFWorkbook(lowerFilePath);
            Integer sheetNums = xwb.getNumberOfSheets();
            if (sheetNums > 0) {
                return xwb.getSheetAt(0).getRowBreaks().length + 1;
            }
        } else if (lowerFilePath.endsWith(".docx")) {
            XWPFDocument docx = new XWPFDocument(POIXMLDocument.openPackage(lowerFilePath));
            return docx.getProperties().getExtendedProperties().getUnderlyingProperties().getPages();
        } else if (lowerFilePath.endsWith(".doc")) {
            HWPFDocument wordDoc = new HWPFDocument(new FileInputStream(lowerFilePath));
            return wordDoc.getSummaryInformation().getPageCount();
        } else if (lowerFilePath.endsWith(".ppt")) {
            HSLFSlideShow document = new HSLFSlideShow(new FileInputStream(lowerFilePath));
            SlideShow slideShow = new SlideShow(document);
            return slideShow.getSlides().length;
        } else if (lowerFilePath.endsWith(".pptx")) {
            XSLFSlideShow xdocument = new XSLFSlideShow(lowerFilePath);
            XMLSlideShow xslideShow = new XMLSlideShow(xdocument);
            return xslideShow.getSlides().length;
}

来源:OfficeTools.getPageCount()



4> Khalid Habib..:
  //Library is aspose 
  //package com.aspose.words.*

/*Open the Word Document */

Document doc = new Document("C:\\Temp\\file.doc"); 

/*Get page count */

int pageCount = doc.getPageCount();

推荐阅读
保佑欣疼你的芯疼
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有