`
18335864773
  • 浏览: 22411 次
文章分类
社区版块
存档分类
最新评论

[转载]java获取word里面的文本

阅读更多

需求场景

  开发的web办公系统如果需要处理大量的Word文档(比如有成千上万个文档),用户一定提出查找包含某些关键字的文档的需求,这就要求能够读取 word 中的文字内容,而忽略其中的文字样式、表格、图片等信息。

方案分析

  方案一:使用Apache POI技术将所有服务器上文档的文本获取后存储到数据库,查找文档时利用sql语句检索数据中存储的文档文本是否包含关键字来搜索到相关文档。然而现在 microsoft word 有两种文档格式doc和docx,这两个版本存储数据的格式上都有相当大的差别。调研发现apache  POI针对doc和docx提供了两套不同的API接口,需要针对两种文档格式编写不同的代码,word文档自身格式复杂,读取word文档内容的代码会对服务器造成一定的压力,且无法实现让用户在线处理word文档。 

  POI主页地址:https://poi.apache.org/

  方案二:使用PageOffice组件的FileSaver对象的getDocumentText方法,获取word文档中的纯文本内容,且如果调用PageOffice实现此功能的话,同时也可以实现word文件的在线编辑。

  

实现步骤

  1. 调用PageOffice在线打开word文件,比如:test.doc

复制代码
PageOfficeCtrl poCtrl=new PageOfficeCtrl(request);
//设置服务器页面
poCtrl.setServerPage(request.getContextPath()+"/poserver.zz");
//设置保存页面为SaveFile.jsp,或SaveFile.do SaveFile.action 等action方法或RequestMapping方法均可
poCtrl.setSaveFilePage("SaveFile.jsp");
//打开Word文档
poCtrl.webOpen("doc/test.doc",OpenModeType.docNormalEdit,"Tom");
复制代码

  2. 在处理保存操作的页面(SaveFile.jsp)或方法里执行保存文件和获取文档中纯文本内容的操作:

复制代码
FileSaver fs=new FileSaver(request,response);
fs.saveToFile(request.getSession().getServletContext().getRealPath("doc/")+"/"+fs.getFileName());//保存文件
String strDocumentText = fs.getDocumentText();//获取文档的纯文本内容,不带任何附加格式 
// - 编写代码,保存文档的文本内容到数据库 - //
......
fs.close();
复制代码

  3. 需要对全文检索的时候,只需对数据库中保存了word文件纯文本内容的数据库字段做SQL查询即可。

分享到:
评论

相关推荐

    Java 获取Word中的所有插入和删除修订.doc

    Java 获取 Word 中的所有插入和删除修订 在 Word 文档中启用跟踪更改功能后,会记录文档中的所有编辑行为,例如插入、删除、替换和格式更改。这篇文章将介绍如何使用 Java 获取 Word 文档中的所有插入和删除修订。 ...

    Java读取Word文档页数

    在Java编程环境中,读取和处理Word文档通常涉及到使用第三方库,因为Java标准库并不直接支持Word文件的操作。本主题将深入探讨如何利用给定的`itextpdf-5.5.9.jar`和`jacob.jar`这两个库来实现Java读取Word文档页数...

    java填充word文档(带有富文本).zip

    Java填充Word文档(带有富文本)是一项常见的任务,在软件开发中尤其重要,特别是在自动化报告生成、数据导出或个性化文档创建等场景下。这个压缩包"ExpordWord-master"很可能包含了一个Java项目,用于演示如何在...

    Java读取多Word文档中指定位置的表格数据或文本内容

    Java读取Word文档中指定位置(可以自己自定义位置)的表格数据或文本内容 * @param filePath 文档路径 * @param start 指定位置开始读取表格数据的该位置上的字符串 * @param end 指定位置开始结束读取表格数据的该...

    java准确读取word页码

    在Java编程环境中,读取Word文档的页码是一项常见的任务,尤其在处理大量文档数据时。这个场景下,我们通常会使用Apache POI库,这是一个强大的API,专门用于处理Microsoft Office格式的文件,包括Word(.doc和.docx...

    Java Poi流 根据Word模板插入相应的文本、表格和图片,生成新的Word报告

    在本主题中,我们将深入探讨如何使用Java POI流处理Word模板,插入文本、表格和图片,以及生成新的Word报告。 1. **Java POI流处理Word模板**: - POI API提供了`XWPFDocument`类来处理`.docx`文件,这是Word 2007...

    java读取word2003

    在Java编程环境中,读取Word 2003文档是一项常见的任务,这通常涉及到处理`.doc`文件格式。为了实现这个功能,开发者可以利用各种库,如Apache POI或者JODConverter。Apache POI是一个流行的开源项目,它提供了对...

    java提取word内容

    在Java编程环境中,提取Word文档内容是一项常见的任务,特别是在数据处理、文档自动化或者信息抽取等领域。Word文档(.doc或.docx)存储了文本、格式、图像等多种元素,而Java提供了一些库,如Apache POI和...

    Java导出Word文件

    在Java编程环境中,导出Word文件是一项常见的任务,特别是在企业级应用中,如报表生成、文档自动化等场景。本文将详细讲解如何使用Java实现Word文件的导出,并结合提供的资源进行解析。 首先,Java导出Word文件通常...

    富文本编辑器生成的含有图片的内容转换成word文档 java 后端下载

    下面我们将详细讨论如何在Java后端实现从wangEditor生成的富文本内容(包括base64编码的图片和网络图片)转换为Word文档,并提供下载功能。 首先,我们需要了解wangEditor生成的内容结构。wangEditor会将用户编辑的...

    java实现word中文转英文

    在Java编程环境中,实现Word文档中的中文到英文的转换是一项技术挑战,但通过利用特定的库和API,这个任务是可以完成的。以下是一篇详细解释如何实现这一目标的文章。 首先,我们需要选择一个能够处理Microsoft ...

    java 利用POI读取Word文件中的内容

    可以遍历文档中的所有段落以获取文本内容。 ```java for (XWPFParagraph paragraph : document.getParagraphs()) { String text = paragraph.getText(); System.out.println(text); } ``` 4. **处理表格**:...

    java数据源导出WORD文档(包括图片、表格及文本)

    最近因项目开发的需要,整理了一份用JAVA导出WORD文档,其部署步骤如下: 1、将jacob-1.14.3-x86.dll放在服务器的系统盘...以上配置配好后即可加载exp_java_word_demo项目,里面有示例代码,望对有需要的人有所帮助!

    Java通过word模板配置书签生成word

    在Java开发中,生成Word文档是一项常见的需求,特别是在企业级应用中,如报告生成、合同制作等。"Java通过word模板配置书签生成word"是一个技术方案,它利用了Java的API来处理Microsoft Word文档,特别是Apache POI...

    java之jacob实现获取word文件的内容

    读取word文件的内容,并将内容返回为String类型!

    java操作word(包含书签插值)

    Java作为一种广泛使用的编程语言,提供了多种库来操作Word文档,实现自动化填充模板,例如书签插值,这在合同制作中非常有用。本文将详细讲解如何使用Java操作Word,特别是针对书签插值的方法,以及相关的技术和工具...

    Java导出Word文档的实现.docx

    在Java开发中,导出Word文档是一项常见的任务,尤其在生成报表、报告或者合同等场合。本文将探讨如何使用Java高效地实现Word文档导出,主要聚焦于利用XDocReport和FreeMarker模板引擎的方式。 首先,Java中导出Word...

    Java读取Word表格内容

    通过Java读取word表格中的内容,将内容存到数据库中,将Word中的图片存到硬盘中

    JAVA 导出WORD

    在Java编程环境中,导出Word文档是一项常见的任务,特别是在企业级应用中,如报表生成、数据导出等。本文将详细讲解如何使用Java实现Word文档的导出,并着重介绍涉及的库和关键技术。 首先,标题"JAVA 导出WORD"指...

    java读取word文档内容以及字体大小和颜色

    java读取不同版本文档的内容以及字体大小,实现对文档格式进行匹配!

Global site tag (gtag.js) - Google Analytics