`
hhr_michael
  • 浏览: 74294 次
  • 性别: Icon_minigender_1
  • 来自: 惠州
社区版块
存档分类
最新评论

用Java简单的读取pdf文件中的数据(转)

阅读更多
用Java简单的读取pdf文件中的数据:
第一步:下载PDFBox-0.7.2.jar。提供一个下载地址:http://pdfhome.hope.com.cn/Resource.aspx?CID=63844604-5253-4ae1-b023-258c9e324061&RID=20cd8f94-1cee-40b6-a3df-0ef024f8e0d2解压后,把lib文件下的PDFBox-0.7.2.jar,PDFBox-0.7.2-log4j.jar放到你classpath路径下。(我把源码以及jar包都放到下面的附件里,方面你的使用。)
第二步:写个简单的读取pdf文件的程序。(PdfReader.java) import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.net.MalformedURLException;
import java.net.URL;
import org.pdfbox.pdmodel.PDDocument;
import org.pdfbox.util.PDFTextStripper; public class PdfReader {  public void readFdf(String file) throws Exception {
  // 是否排序
  boolean sort = false;
  // pdf文件名
  String pdfFile = file;
  // 输入文本文件名称
  String textFile = null;
  // 编码方式
  String encoding = "UTF-8";
  // 开始提取页数
  int startPage = 1;
  // 结束提取页数
  int endPage = Integer.MAX_VALUE;
  // 文件输入流,生成文本文件
  Writer output = null;
  // 内存中存储的PDF Document
  PDDocument document = null;
  try {
   try {
    // 首先当作一个URL来装载文件,如果得到异常再从本地文件系统//去装载文件
    URL url = new URL(pdfFile);    //注意参数已不是以前版本中的URL.而是File。
    document = PDDocument.load(pdfFile);
    // 获取PDF的文件名
    String fileName = url.getFile();
    // 以原来PDF的名称来命名新产生的txt文件
    if (fileName.length() > 4) {
     File outputFile = new File(fileName.substring(0, fileName
       .length() - 4)
       + ".txt");
     textFile = outputFile.getName();
    }
   } catch (MalformedURLException e) {
    // 如果作为URL装载得到异常则从文件系统装载    //注意参数已不是以前版本中的URL.而是File。
    document = PDDocument.load(pdfFile);
    if (pdfFile.length() > 4) {      textFile = pdfFile.substring(0, pdfFile.length() - 4)
       + ".txt";
    }
   }
   // 文件输入流,写入文件倒textFile
   output = new OutputStreamWriter(new FileOutputStream(textFile),
     encoding);
   // PDFTextStripper来提取文本
   PDFTextStripper stripper = null;
   stripper = new PDFTextStripper();
   // 设置是否排序
   stripper.setSortByPosition(sort);
   // 设置起始页
   stripper.setStartPage(startPage);
   // 设置结束页
   stripper.setEndPage(endPage);
   // 调用PDFTextStripper的writeText提取并输出文本
   stripper.writeText(document, output);
  } finally {
   if (output != null) {
    // 关闭输出流
    output.close();
   }
   if (document != null) {
    // 关闭PDF Document
    document.close();
   }
  }
 }  /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  PdfReader pdfReader = new PdfReader();
  try {
   // 取得E盘下的SpringGuide.pdf的内容
   pdfReader.readFdf("E:\\SpringGuide.pdf");
  } catch (Exception e) {
   e.printStackTrace();
  }
 } }
这样就简单的完成了从pdf中读取数据了。在你的pdf文件所在的目录下生成一个同名的txt文件。

分享到:
评论

相关推荐

    Java 读取pdf文件中的数据

    ### Java读取PDF文件中的数据 #### 知识点概览 本文将详细介绍如何使用Java语言来读取PDF文件中的文本内容。此方法简洁高效,适用于处理大量的PDF文档。主要涉及的技术栈包括Java编程基础、PDFBox库的使用以及文件I...

    用Java读取pdf中的数据

    以下是一个基本的示例代码,展示如何使用iText的`PdfReader`读取PDF文件: ```java import com.itextpdf.text.pdf.PdfReader; import com.itextpdf.text.pdf.parser.PdfTextExtractor; public class ...

    Java 读取PDF文件

    本篇文章将深入探讨如何使用Java来读取PDF文件,并将其内容展示在一个由JFrame和JPanel构建的GUI窗口中。 首先,我们需要引入一个能够处理PDF的库。Apache PDFBox是一个广泛使用的开源Java库,它可以方便地读取、...

    java 读取PDF文件中的内容

    在Java编程环境中,读取PDF文件中的内容是一个常见的任务,特别是在处理文档自动化或者数据分析时。PDF(Portable Document Format)是一种跨平台的文件格式,用于精确地保留文档的格式和内容。下面将详细介绍如何...

    java读取pdf文件属性

    本文将深入探讨如何使用Java读取PDF文件的属性,如作者、标题等元数据,以及相关的知识点。 ### 一、Java读取PDF文件属性的技术背景 在Java中读取PDF文件属性主要依赖于开源库PDFBox。PDFBox是一个用于处理PDF文档...

    Java代码实现txt文件转pdf文件

    2. **读取TXT文件**:使用Java的`BufferedReader`类读取TXT文件内容,并将其存储到一个字符串变量中。 ```java String content = ""; try (BufferedReader reader = new BufferedReader(new FileReader("input....

    java读取PDF显示于浏览器

    3. **Java读取PDF**:使用PDFBox,你可以通过`PDDocument.load()`方法加载PDF文件,然后使用`PDFPage.getGraphics()`获取页面的图形内容。iText提供了`PdfReader`类来读取PDF,并可以使用`PdfStamper`或`PdfCopy`...

    java URL转PDF文件(完美支持中文)

    在Java编程环境中,将URL内容转换为PDF文件是一项常见的需求,尤其在数据抓取、文档保存或自动化报告生成等场景中。"java URL转PDF文件(完美支持中文)"的主题着重于如何利用Java库来实现这一功能,并且确保中文字符...

    JAVA读取WORD_EXCEL_POWERPOINT_PDF文件的方法(poi)

    JAVA 读取 WORD_EXCEL_POWERPOINT_PDF 文件的方法是使用 Apache POI 库来实现的。POI 库是一个开放源代码的 Java 库,提供了对 Microsoft Office 文件格式的读写能力。 读取 WORD 文件 在读取 WORD 文件时,需要...

    定时读取PDF文件,并批量插入到数据库

    在IT行业中,定时任务是常见的自动化操作,而本项目的核心在于定时读取PDF文件并将其内容批量插入到数据库。这个任务涉及到多个技术点,包括线程管理、PDF处理、数据库操作以及工具类的设计。以下是对这些知识点的...

    java Excel文件转PDF文件

    在Java编程环境中,将Excel文件转换为PDF文件是一项常见的任务,尤其在数据报告或文档格式转换的场景下。本文将详细介绍如何使用Apache POI库处理Excel数据,以及使用iText库将这些数据导出为PDF格式。Apache POI是...

    java语言实现Text格式转换成pdf文件

    它提供了丰富的API,可以方便地创建、编辑和读取PDF文件。在本示例中,我们将主要依赖PDFBox来完成转换任务。 步骤1:引入PDFBox库 要使用PDFBox,首先需要将其添加到项目依赖中。如果是Maven项目,可以在pom.xml...

    Java 解析 PDF, pdfbox读取PDF内容

    在本示例中,我们将专注于如何使用PDFBox读取PDF的内容。 首先,你需要在你的项目中引入PDFBox库。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>org.apache.pdfbox <artifactId>...

    java 读取 PDF

    在Java中读取PDF文件是一项常见的任务,尤其在处理文档自动化、数据分析或报表生成的场景中。为了实现这个功能,通常需要借助特定的库或API。在这个案例中,描述提到的"java 读取PDF JAR包 例子"暗示我们可能会使用...

    java 把PDF转换成BASE64

    1. **读取PDF文件**:使用`Files.readAllBytes()`方法读取PDF文件的全部内容到一个字节数组中。 ```java Path filePath = Paths.get("path_to_your_pdf_file.pdf"); byte[] pdfBytes = Files.readAllBytes(filePath)...

    Spire.Pdf.zip 读取PDF文件中的信息

    读取PDF文件中的信息 package com.zht; import java.io.File; import java.io.UnsupportedEncodingException; import java.sql.Connection; import java.sql.DriverManager; import java.sql....

    使用PDFLIB库实现对pdf文件的读取

    PDFLIB库是一个强大的PDF处理库,它为程序员提供了在各种编程环境中创建、修改和读取PDF文件的功能。在这个场景中,我们关注的是如何在Visual Studio 2010(VS2010)中利用PDFLIB TET库来读取PDF文件。TET是PDFLIB的...

Global site tag (gtag.js) - Google Analytics