Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 从上传文档中提取文本的建议_Sql_Apache Poi_Text Extraction - Fatal编程技术网

Sql 从上传文档中提取文本的建议

Sql 从上传文档中提取文本的建议,sql,apache-poi,text-extraction,Sql,Apache Poi,Text Extraction,目前,我每天都有大量文档上传到我的网站(.doc、.docx、.odt、pdf),这些文档存储在sql数据库(mediumblob)中 目前,我打开数据库中的文档,将文本版本剪切并粘贴到数据库中的一个字段中,以实现快速参考和搜索功能 我正在寻找自动化这个“剪切粘贴”过程——只要我能提取文本,格式化就不是一个真正的问题——并且希望一些人能够提出一个好的方法来继续 我尝试过使用正则表达式来操纵blob字段的内容,但它并没有真正起作用 我一直在研究ApachePOI,以期在上传时提取文本,但我忍不住想

目前,我每天都有大量文档上传到我的网站(.doc、.docx、.odt、pdf),这些文档存储在sql数据库(mediumblob)中

目前,我打开数据库中的文档,将文本版本剪切并粘贴到数据库中的一个字段中,以实现快速参考和搜索功能

我正在寻找自动化这个“剪切粘贴”过程——只要我能提取文本,格式化就不是一个真正的问题——并且希望一些人能够提出一个好的方法来继续

我尝试过使用正则表达式来操纵blob字段的内容,但它并没有真正起作用

我一直在研究ApachePOI,以期在上传时提取文本,但我忍不住想,鉴于我相对简单的需求,这可能有点过分了

考虑到我遇到的各种文档格式以及当前在blob字段中存储内容的情况,apachepoi是在这种情况下使用的最佳解决方案,还是有人能推荐一种替代方案

非常感谢您的帮助和建议

Chris只适用于Microsoft Office格式(.xls、.docx、.msg等)。对于这些格式,它提供了用于处理文件的类(总是读取,对于许多写入支持也是如此)以及文本提取器

对于一般的文本提取框架,您应该查看。Tika在内部使用POI来处理Microsoft格式,并使用许多其他库来处理不同的格式。例如,Tika将同时处理PDF和ODF/ODT,这是您在问题中提到的另外两种文件格式


上有一些快速入门教程和示例,我建议您浏览一下。开始使用它很快,您应该能够轻松地更改代码,以便在上传过程中通过Tika发送文档,以获得纯文本版本,或者如果对您更有帮助的话,可以使用事件XHTML。

我认为POI是标准解决方案;因此,如果你陷入困境,它将是你最有可能找到帮助的。我想不出你不使用它的任何理由。谢谢David-考虑到额外的格式,我将在本例中尝试Tika。谢谢Gagravarr-我将尝试让Tika为我工作。