在平常应用程序中,对officepdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中。所以今天我们就简单来看一下javawordexcelpdf文件的读取。本篇博客只是讲解简单应用。如果想深入了解原理。请读者自行研究一些相关源码。

首先我们来认识一下读取相关文档的jar包:

1. 引用POI包读取word文档内容

poi.jar 下载地址

2.引用jxl包读取excel文档的内容

Jxl.jar下载地址

3.引用PDFBox读取pdf文档的内容

Pdfbox.jar下载地址

 

 

Fontbox.jar下载地址

 

 

Jempbox.jar下载地址

 

 

下面我们就来简单看一下这些jar包的对文档的读取的应用实例:

1. 引用POI包读取word文档内容

import java.io.File;    import java.io.FileInputStream;    import org.apache.poi.hwpf.HWPFDocument;    import org.apache.poi.hwpf.usermodel.Range;     /**  *  * @author 曹胜欢 */  public class DocFile{          @Override      public String getContent(File f) throws Exception {            FileInputStream fis = new FileInputStream(f);            HWPFDocument doc = new HWPFDocument(fis);            Range rang = doc.getRange();            String text = rang.text();            fis.close();            return text;        }
2.
引用
jxl
包读取
excel
文档的内容

import java.io.File;    import java.io.FileInputStream;    import jxl.Cell;    import jxl.Sheet;    import jxl.Workbook;     /**  *  * @author 曹胜欢 */  public class XlsFile{         @Override        public String getContent(File f) throws Exception {         //构建Workbook对象, 只读Workbook对象      //直接从本地文件创建Workbook       //从输入流创建Workbook          FileInputStream fis = new FileInputStream(f);            StringBuilder sb = new StringBuilder();            jxl.Workbook rwb = Workbook.getWorkbook(fis);    //一旦创建了Workbook,我们就可以通过它来访问 //Excel Sheet的数组集合(术语:工作表), //也可以调用getsheet方法获取指定的工资表         Sheet[] sheet = rwb.getSheets();            for (int i = 0; i < sheet.length; i++) {                Sheet rs = rwb.getSheet(i);                for (int j = 0; j < rs.getRows(); j++) {                   Cell[] cells = rs.getRow(j);                   for(int k=0;k

由上面代码我们可知:一旦得到了Sheet,我们就可以通过它来访问Excel Cell(术语:单元格)。参考下面的代码片段:

//获取第一行,第一列的值
Cell c00 = rs.getCell(0, 0);
String strc00 = c00.getContents();
//获取第一行,第二列的值
Cell c10 = rs.getCell(1, 0);
String strc10 = c10.getContents();
当你完成对Excel电子表格数据的处理后,一定要使用close()方法来关闭先前创建的对象,以释放读取数据表的过程中所占用的内存空间,在读取大量数据时显得尤为重要。

3.引用PDFBox读取pdf文档的内容

import java.io.File;    import java.io.FileInputStream;    import org.pdfbox.pdfparser.PDFParser;    import org.pdfbox.pdmodel.PDDocument;    import org.pdfbox.util.PDFTextStripper;     /**  *  * @author 曹胜欢 */
public class PdfFile{         public String getContent(File f) throws Exception {            FileInputStream fis = new FileInputStream(f);            PDFParser p = new PDFParser(fis);            p.parse();            PDDocument pdd = p.getPDDocument();            PDFTextStripper ts = new PDFTextStripper();            String c = ts.getText(pdd);            pdd.close();            fis.close();            return c;        }    }

------------------------------------------------------------------------------------------------------------------------
  广告:我参加了2012年度IT博客大赛,希望大家能多多支持

------------------------------------------------------------------------------------------------------------