当前位置:  技术问答>java相关

如何从Java程序读取PDF文档中的文本信息?

    来源: 互联网  发布时间:2015-05-09

    本文导语:  最好可以有一些程序片断。 | 以前看到的,不知道有没有价值 Re: How to read the a PDF file content using Ethymon PJ?   Body:  try this code : import java.io.*; import java.util.*; import com.etymon.pj.*; impor...

最好可以有一些程序片断。

|
以前看到的,不知道有没有价值
Re: How to read the a PDF file content using Ethymon PJ?
 
Body:  try this code :

import java.io.*;
import java.util.*;
import com.etymon.pj.*;
import com.etymon.pj.object.*;
import com.etymon.pj.exception.*;

/**
* This is a wrapper for the Pj PDF parser
*/
public class PjWrapper {

Pdf pdf;
PjCatalog catalog;
PjPagesNode rootPage;

public PjWrapper(String PdfFileName,String TextFileName)throws
IOException, PjException {

pdf = new Pdf(PdfFileName);

// hopefully the catalog can never be a reference...

catalog = (PjCatalog) pdf.getObject(pdf.getCatalog());

// root node of pages tree is specified by a reference in the catalog

rootPage = (PjPagesNode) pdf.resolve(catalog.getPages());
}

public static void main (String [] args) throws IOException, PjException
{

/*PjWrapper testWrapper = new PjWrapper(args[0]);
LinkedList textList = testWrapper.getAllText();*/
}

/**
* Returns as much text as we can extract from the PDF.
* This currently includes:
*
* NOTE: Pj does not support LZW, so some text in some PDF's may not
* be indexable
*/
public LinkedList getAllText() throws PjException {

LinkedList stringList = new LinkedList();
Iterator streamIter = getAllContentsStreams().iterator();
PjStream stream;
String streamData;
String streamText;
boolean moreData;
int textStart, textEnd;

//System.out.println("Going through streams...");

while(streamIter.hasNext()) {

//System.out.println("Getting next stream");
stream = (PjStream) streamIter.next();

//System.out.println("Adding text from stream with filter: "
+getFilterString(stream);
stream = stream.flateDecompress();

//System.out.println("Adding text from stream with filter
afterdecompress: " + getFilterString(stream));
streamData = new String(stream.getBuffer());

streamText = new String();
moreData = true;
textStart = textEnd = 0;

while(moreData) {

if ((textStart = streamData.indexOf('(', textEnd + 1)) 

    
 
 

您可能感兴趣的文章:

  • java中读取.txt和读取.ini文件的方式和命令是否一样
  • 请问在Java程序中能否直接读取ini文件,如何读取?
  • 谁知道java servlets文档的下载地址? iis7站长之家
  • 请问在Linux里,如何用JAVA读取内存里的PATH设置
  • 可以用Java读取Notes的数据么?急,定给分!!!
  • 有没有人晓得怎么用JAVA实现读取UTMP或WTMP等日志文件!!!!!!!!!!!!!
  • 哪里有用JAVA读取 MS-Excel文件的包?谢谢谢谢
  • java自动根据文件内容的编码来读取避免乱码
  • Java读取二维条码
  • java读取csv文件示例分享(java解析csv文件)
  • 如何用JAVA读取Doc文档?(必给分)
  • 急!送分求助,java程序中如何读取系统环境变量?
  • 如何在java应用程序中读取键盘的输入?闪电给分。
  • 请问各位大虾: 如何用java读取一个xml文档
  • 请问如何用Java从数据库中读取媒体文件,如图片,mpeg 等
  • 如何读取java文件?
  • 谁有读取cad文件的java源程序?谢谢了!
  • 哪为做过读取PDF格式文件的JAVA程序
  • 用java读取位图
  • 笨苯问题:java类中如何读取xml中定义的属性信息。
  • 给大家几个IP地址文本框,日期文本框,收发电子邮件等java实例,下载送分。
  • 使用java从乱码文本中解析出正确的文本
  • Java的文本文件处理包 JSaPar
  • 简单Java文本模板 Hapax
  • JAVA中将汉字写到文本文件的问题
  • 从文本编辑器写的java程序如何放到Jbuilder里?
  • 如何用Java实现二进制文件到文本文件的相互转化?
  • 请问怎么用JAVA创建一个文本文件?( 急!!!)
  • Java 文本冒险游戏 JAdventure
  • 求系统安装盘下载地址,有C、JAVA编译器、文本模式即可
  • 如何用java实现将数据库中的image类型数据导出到文本文件。并导入(高分求救!!)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java操作excel2007文档介绍及代码例子
  • 请问我如何用java打开一个word文档,就像双击文档一样,系统调出word!
  • 高手请进!请教java把TXT或XML或PDF格式的文档转换成word格式文档的问题
  • 哪位java同门师兄有《java2编程详解》电子文档,注意不是影印版
  • java2 的技术文档java2 1.3.1_doc哪里有得下载?
  • 我要生成java 的文档在dos 下用什么命令.
  • 求救!!!JAVA中怎么显示WORD文档。
  • 请问Java有没有像MSDN这样的帮助教学文档?
  • 有什么制作help文档的软件吗?(For Java)
  • Java 的帮助文档的下载
  • Java的PDF文档签名库 JSignPdf
  • 毕业设计做JAVA,怎么写文档啊
  • 求助!Java1.3文档!!!
  • Java文档解析器 QDox
  • 用Java开发多文档应用程序
  • 哪里有java的API文档下载?
  • 求Java Servlet API说明文档!
  • java有没有类似msdn的帮助文档?叫什么名称?在那里下载?
  • Java文档分析工具 DoctorJ
  • Java文档工具 JSimpleDoc
  • 谁知道java servlets文档的下载地址?
  • java命名空间java.sql类types的类成员方法: java_object定义及介绍
  • 我想学JAVA ,是买THINK IN JAVA 还是JAVA2核心技术:卷1 好???
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: imageflavor定义及介绍
  • 请问Java高手,Java的优势在那里??,Java主要适合于开发哪类应用程序
  • java命名空间java.lang.management类managementfactory的类成员方法: getcompilationmxbean定义及介绍
  • 如何将java.util.Date转化为java.sql.Date?数据库中Date类型对应于java的哪个Date呢
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getlibrarypath定义及介绍
  • 谁有电子版的《Java编程思想第二版(Thinking in java second)》和《Java2编程详解(special edition java2)》?得到给分
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getstarttime定义及介绍
  • 本人想学java,请问java程序员的待遇如何,和java主要有几个比较强的方向


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3