lucene入门-解析pdf(使用pdfbox解析英文PDF)

下载pdfbox

http://incubator.apache.org/pdfbox/

下载相关的jar

http://commons.apache.org/downloads/download_logging.cgi

引入external下的所有包

英语PDF:

package extract;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;


import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.util.*;

public class ExtractorPDF {

public static String getText(String file){
String s="";
String pdffile=file;
PDDocument pdfdoc=null;
try {
pdfdoc=PDDocument.load(pdffile);
PDFTextStripper stripper=new PDFTextStripper();
s=stripper.getText(pdfdoc);

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
try {
if (pdfdoc!=null){
pdfdoc.close();
}
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return s;
}
public static void toTextFile(String doc,String filename) throws Exception{
String pdffile=doc;
PDDocument pdfdoc=PDDocument.load(doc);
try {
pdfdoc=PDDocument.load(pdffile);
PDFTextStripper stripper=new PDFTextStripper();
PrintWriter pw=new PrintWriter(new FileWriter(filename));
stripper.writeText(pdfdoc, pw);

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
try {
if (pdfdoc!=null){
pdfdoc.close();
}
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
String sc=getText("D:/workspace/testsearch2/htmls/xxxx.pdf");
System.out.print(sc);
toTextFile("D:/workspace/testsearch2/htmls/xxxx.pdf","D:/workspace/testsearch2/htmls/xxxx.txt");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

}
先读取PDF文件内容输出

然后再将该PDF文件转换成TXT

双相机坐标系标定 工业双相机对位标定 阅读详情

相关推荐

不用Root也能抓包?Android高版本HTTPS抓包的3种替代方案(含Charles技巧)

本文针对Android高版本HTTPS抓包难题,提供了三种无需Root权限的实战解决方案:利用VirtualXposed等虚拟沙盒环境、配置Postern等系统级代理工具,以及通过修改应用源码或网络安全配置。文章还详细解析了Charles抓包工具在非Root环境下的高级配置与排错技巧,帮助开发者在遵守安全规范的前提下,有效进行网络调试与监控。

http9protocoller的博客 642

使用pdfbox解析中英文pdf文件

package com.dreamers.read; import java.io.Writer; import java.net.MalformedURLException; import java.net.URL; import org.pdfbox.pdmodel.PDDocument; import org.pdfbox.util.PDFTextStri...

221

电子结构设计(EMD)十年知识总结

客官,你的面相是做结构设计的奇才~1. 材料选择【一出手的0.1s就败了】2. 钣金件设计【折来折去有啥难】3. 塑胶件设计【看着好复杂】4. 型材件设计【凭啥不让我设计】5. 电子结构(PCBA)设计【静电肿么要我背锅】6. 包装设计【要的就是金玉其外,败絮其中】7. 外观(工业)设计【好不好看,谁说了算】8. 标签设计【】9. 标准件选择【一个螺丝难倒英雄汉/提起螺丝,英雄气短】10. 计算仿...

wfeng86的博客 1568

PdfBox解析pdf乱码

PdfBox解析 使用PdfBox解析pdf,出现了某些pdf无法解析的问题,折腾了几天终于解决,今天记录一下。 找到问题 将正常的pdf和不能解析的pdf对比,发现正常的pdf和非正常的pdf的样式不同,但是具体不知道两种文件各自的区别,于是使用pdf转化器,分别将两种pdf转化成word,正常的pdf转化出的pdf内容文字格式是SEACRC+Times-Roman,而不正常的文字格式是Cali...

学习之余随便记记 1万+

pgpool-II安装部署

文章介绍了pgpool-II的核心功能、架构组成以及实际部署的关键配置步骤

weixin_41690116的博客 1422

从零开始STM32cubeide学习

使用的是正点原子的精英版,单片机是STM32F103ZET6,详细讲解完成跑马灯实验

weixin_44077208的博客 2277

java 解析pdf 表单,Java pdfBox:填写pdf表单,将其附加到pddocument,然后重复

I have a pdf form made and I'm trying to use pdfBox to fill in the form and print the document. I got it working great for 1 page print jobs but i had to try and modify for multiple pages. Basically i...

weixin_35753291的博客 665

基于MATLAB的多无人机多任务调度算法——CBBA带时间窗

本文将介绍基于MATLAB的CBBA算法,并对其进行改进,加入时间窗概念,以提高多无人机系统的调度效率和性能。时间窗用于限定任务的执行时间范围,以避免任务执行时间过长或过短导致的问题。具体而言,我们为每个任务设置一个允许的最早开始时间和最晚结束时间,并在任务分配的过程中考虑这些时间约束。在多无人机系统中,需要将若干个任务分配给不同的无人机完成,以实现高效的任务执行。以上是关于基于MATLAB的多无人机多任务调度算法CBBA带时间窗的简要介绍和源代码实现。多无人机系统的调度问题。

BUG?不存在的! 1896

PDDocument.load() 读取pdf文件过大

PDDocument.load() 读取pdf文件过大

A_bad_horse的专栏 2903

图解电动汽车:电动汽车主要参数

动力性指标 汽车的动力性指标主要有最高车速、加速时间、最大爬坡等,体现了汽车在行驶过程中能达到的极限运动水平。对于电动汽车,其动力性由搭载的驱动电动机决定,主要的参数包括最大扭矩、额定功率、最大功率、最大转速等。 功率是指物体在单位时间内所做的功的多少,是描述做功快慢的物理量,单位是 kW。 扭矩是指机械元件转动的力矩,也称转矩,表示转动力量的大小,单位是 N·m。 转速是指发动机/电动机的转速,的单位是 rpm,即转每分钟。额定转速是指在额定功率下电动机的转速,最大转速则是在最大功率下电动机的转速。

程序员「阿基米东」的编程之旅 2万+

基于STM32+华为云设计的智能鱼缸

本项目基于STM32单片机设计一款基于物联网的智能鱼缸系统,并通过应用侧接口开发上位机APP实现远程对鱼缸参数的检测和控制。该系统包括水温检测、水质检测、自动或手动换水、氛围灯灯光变换和自动或手动喂食等功能,可以帮助用户更好地管理鱼缸,提高鱼儿的生存率,同时增强用户对家庭装饰品的掌控感和科技感。

1万+

PDDocument.load(file)导致OOM

本次解决方案参考: https://blog.youkuaiyun.com/qq_37722992/article/details/112977147 背景: 线上用户出现预览pdf文件,以图片格式预览pdf异常,查看日志显示: java.lang.OutOfMemoryError: Java heap space 排查: 通过排查代码发现在PDDocument.load(file)这一步导致,简单测试增加内存后问题解决,但是用户线上没有这么大内存的空间,所以单纯的增大内存行不通。 解决: 增加参数 Memo

GUYyyy的博客 5997

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

使用lucene的几个注意点

1.lucene中的document对txt文件是直接支持的,对于pdf,doc,html等则需经过解析成txt的形式,网上开源的解析工具包有pdfbox,poi,nekohtml。 2.indexwriter中第三个boolean参数标明是重写索引还是增量索引,若是增量索引须注意在上一次所以结束时writer已经close了,否则函数是无效的。 3.lucene的索引次序是字典序的,也就是说我们

技术空间站 771

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

apache pdfbox

转http://www.blogjava.net/sxyx2008/archive/2010/07/23/326890.html 轻松使用apache pdfbox将pdf文件生成图 近期在项目中使用到了大量的报表开发,需要将html页面中的表格内容导出到pdf word excel和图片,前三者都比较好实现。唯独后者生成图片使用ImageIo操作时生成的图片有点惨不忍睹。经过大量goo...

weixin_30279315的博客 164

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Lucene2.4入门总结

[b]1、利用Lucene构建搜索引擎的一般过程:[/b] 各类文档的字符化——>对字符数据进行分词——>建立索引——>搜索(选择搜索字段、搜索方式,执行搜索)。 [b]2、Lucene文件系统说明:[/b] %LUCENE_HOME%\contrib\:Lucene扩展包,包括针对多种语言的分词工具、亮亮显示、Ant、xml文件解析等。其他目录无需赘言,清晰明了。 [b]3、...

idealab的专栏 192

lucene进行全文检索的一个简单例子

    最近在研究关于lucene检索文档的问题,参考网上一些人的例子,但是结果只能检索英文的,有人说要通过中文分词,但我也用了,结果是一样的,不能检索中文。呵呵。。。后来经过一些高手的指点,解决了中文的问题。我用的lucene版本为3.0.2,中文分词是IKAnalyzer3.2.下面是我的一些代码。仅供参考。第一步: 建立文件索引: public class IndexProcesse...

slw8449的专栏 202

[转]Lucene经验总结 (转注:较旧,但有干货)

// 转自:http://zdm2008.blog.163.com/blog/static/20491545200971894520912/ 个人的一点经验,分享之佘,还请大家补充!! 如果你想学Lucene,那么Sphinx你一定不能放过 ---------------------------------------------------------------...

weixin_30251587的博客 166

luence入门

、利用Lucene构建搜索引擎的一般过程:    各类文档的字符化——>对字符数据进行分词——>建立索引——>搜索(选择搜索字段、搜索方式,执行搜索)。 2、Lucene文件系统说明:    %LUCENE_HOME%\contrib\:Lucene扩展包,包括针对多种语言的分词工具、亮亮显示、Ant、xml文件解析等。其他目录无需赘言,清晰明了。 3、Lucene主要包结构:    |

chenhaiyang_ok的专栏 590

搜索引擎相关学习

1:搜索引擎按原理和工作方式可分为: A:爬虫式,主要用Socket实现,基于TCP/IP协议 B:目录索引式,以早期的yahoo为代表 C:元搜索引擎,即将多个搜索引擎的结果合并返回 2:按领域范围可分为: A:通用搜索引擎---针对全互联网全部网站和各种数据信息,信息全,领域广 B:垂直搜索引擎---针对果某一行业,如企业库搜索,供求信息搜索,房产搜索等 3:信息类型分类: ...

soledede 224

pdf文档的操作

pdf转图片 import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.List; import javax.imageio.ImageIO; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.

xumao11的博客 1592

学习笔记(Java篇):Java操作文件之PDF(1)

本文主要介绍了将一个PDF文件进行拆分并转储图片的流程,可以在一定程度上解决页面加载文件效率的问题。以上所用内容基本都在Java提供的API里面,详细研究可以参考Java源码。try {i++) {//pdf转储图片文件//TODO 上传返回/*** 拼接图片(垂直拼接,image在上,bufferedImage在下)* @return*/

m0_57303563的博客 2438

java工具类 PDF转图片

java工具类 PDF转图片

my java博客园 1042

pdfbox 复制文件 文件变大

问题描述:原文件大小17KB ,复制后 34KB。使用的pdfbox版本为 2.0.28。升级后 编译报错:无法解析 'PDDocument' 中的方法 'load'解决办法:升级PDFbox版本 3.0.1。

qq_37322924的博客 660

java读取pdf

添加maven 依赖 <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbox</artifactId> <version>2.0.3</version> </dependency> 读取方式 // 方式一:

luckgl的博客 998
上一篇: lucene入门-解析pdf(使用pdfbox解析英文PDF)
下一篇: lucene入门-使用JE中文分词
deepfuture
博客等级 码龄17年 210粉丝 1287原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值