gpt4 book ai didi

java - 计算 Word 文档中的页数

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:29:26 25 4
gpt4 key购买 nike

我正在尝试使用 java 计算 word 文档的页数。

这是我的实际代码,我使用的是 Apache POI 库

String path1 = "E:/iugkh";
File f = new File(path1);
File[] files = f.listFiles();
int pagesCount = 0;
for (int i = 0; i < files.length; i++) {
POIFSFileSystem fis = new POIFSFileSystem(new FileInputStream(files[i]));
HWPFDocument wdDoc = new HWPFDocument(fis);
int pagesNo = wdDoc.getSummaryInformation().getPageCount();
pagesCount += pagesNo;
System.out.println(files[i].getName()+":\t"+pagesNo);
}

输出是:

ten.doc:    1
twelve.doc: 1
nine.doc: 1
one.doc: 1
eight.doc: 1
4teen.doc: 1
5teen.doc: 1
six.doc: 1
seven.doc: 1

这不是我所期望的,因为前三个文档的页长是 4 页,另一个是 1 到 5 页长。

我错过了什么?

我是否必须使用另一个库才能正确计算页数?

提前致谢

最佳答案

这可能对您有所帮助。它计算表单提要的数量(有时用于分隔页面),但我不确定它是否适用于所有文档(我猜它不会)。

WordExtractor extractor = new WordExtractor(document);
String[] paragraphs = extractor.getParagraphText();

int pageCount = 1;
for (int i = 0; i < paragraphs.length; ++i) {
if (paragraphs[i].indexOf("\f") >= 0) {
++pageCount;
}
}

System.out.println(pageCount);

关于java - 计算 Word 文档中的页数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16442347/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com