国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Java抽取Word,PDF格式文件的四種武器

2019-11-18 11:15:53
字體:
來源:轉載
供稿:網友

很多人用java進行文檔操作時經常會碰到一個問題,就是如何獲得Word,Excel,pdf等文檔的內容?我研究了一下,在這里總結一下抽取word,pdf的幾種方法。
1. 用jacob
其實jacob是一個bridage,連接java和com或者win32函數的一個中間件,jacob并不能直接抽取word,excel等文件,需要自己寫dll哦,不過已經有為你寫好的了,就是jacob的作者一并提供了。
jacob jar與dll文件下載: http://danadler.com/jacob/
下載了jacob并放到指定的路徑之后(dll放到path,jar文件放到classpath),就可以寫你自己的抽取程序了,下面是一個簡單的例子:
import java.io.File;
import com.jacob.com.*;
import com.jacob.activeX.*;
/**
* Title: pdf extraction
* Description: email:chris@matrix.org.cn
* Copyright: Matrix Copyright (c) 2003
* Company: Matrix.org.cn
* @author chris
* @version 1.0,who use this example pls remain the declare
*/
public class FileExtracter{
public static void main(String[] args) {
ActiveXComponent component = new ActiveXComponent("Word.application");
String inFile = "c://test.doc";
String tpFile = "c://temp.htm";
String otFile = "c://temp.xml";
boolean flag = false;
try {
component.setObject wordacc = component.getProperty("document.").toDispatch();
Object wordfile = Dispatch.invoke(wordacc,"Open", Dispatch.Method,
new Object[]{inFile,new Variant(false), new Variant(true)},
new int[1] ).toDispatch();
Dispatch.invoke(wordfile,"SaveAs", Dispatch.Method, new Object[]{tpFile,new Variant(8)}, new int[1]);
Variant f = new Variant(false);
Dispatch.call(wordfile, "Close", f);
flag = true;
} catch (Exception e) {
e.printStackTrace();
} finally {
component.invoke("Quit", new Variant[] {});
}
}
}
2. 用apache的poi來抽取word,excel。
poi是apache的一個項目,不過就算用poi你可能都覺得很煩,不過不要緊,這里提供了更加簡單的一個接口給你:
下載經過封裝后的poi包: http://jakarta.apache.org/poi/
下載之后,放到你的classpath就可以了,下面是如何使用它的一個例子:
import java.io.*;
import org.textmining.text.extraction.WordExtractor;
/**
*

Title: word extraction


*

Description: email:chris@matrix.org.cn


*

Copyright: Matrix Copyright (c) 2003


*

Company: Matrix.org.cn


* @author chris
* @version 1.0,who use this example pls remain the declare
*/

public class PdfExtractor {
public PdfExtractor() {
}
public static void main(String args[]) throws Exception
{
FileInputStream in = new FileInputStream ("c://a.doc");
WordExtractor extractor = new WordExtractor();
String str = extractor.extractText(in);
System.out.println("the result length is"+str.length());
System.out.println("the result is"+str);
}
}
3. pdfbox-用來抽取pdf文件
但是pdfbox對中文支持還不好,先下載pdfbox: http://www.pdfbox.org/
下面是一個如何使用pdfbox抽取pdf文件的例子:
import org.pdfbox.pdmodel.PDdocument.
import org.pdfbox.pdfparser.PDFParser;
import java.io.*;
import org.pdfbox.util.PDFTextStripper;
import java.util.Date;
/**
*



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 瑞金市| 温州市| 东兴市| 双流县| 延庆县| 萝北县| 彭阳县| 泗阳县| 石渠县| 南和县| 安平县| 烟台市| 吉水县| 仪陇县| 盐池县| 乐亭县| 财经| 平遥县| 汉源县| 开远市| 金溪县| 昭觉县| 玉龙| 高邮市| 富川| 瑞丽市| 遵义市| 沙田区| 甘洛县| 汨罗市| 钟山县| 宿迁市| 乌鲁木齐县| 柳州市| 普洱| 开化县| 翁源县| 叶城县| 长乐市| 金乡县| 柳河县|