java 处理word,excel,pdf -javacode
2008年08月27日 星期三 01:08 P.M.
java 处理word,excel,pdf -javacode
很多人问到如何抽取word,excel,pdf阿。这里我总结一下抽取word,pdf的 几种方法。 1。用jacob. 其实jacob是一个bridage,连接java和com或者win32函数的一个中间件,jacob并不能直接抽取word,excel等文件,需要自己写dll哦,不过已经有为你写好的了,就是jacob的作者一并提供了。 jacob下载: http://www.java-cn.com/technology/tech_downs/1880_001.zip 下载了jacob并放到指定的路径之后(dll放到path,jar文件放到classpath),就可以写你自己的抽取程序了,下面是一个例子: import java.io.File; import com.jacob.com.*; import com.jacob.activeX.*;
public class FileExtracter{
public static void main(String[] args) {
ActiveXComponent app = new ActiveXComponent("Word.Application"); String inFile = "c: est.doc"; String tpFile = "c: emp.htm"; String otFile = "c: emp.xml"; boolean flag = false; try { app.setProperty("Visible", new Variant(false)); Object docs = app.getProperty("document.").toDispatch(); Object doc = Dispatch.invoke(docs,"Open", Dispatch.Method, new Object[]{inFile,new Variant(false), new Variant(true)}, new int[1]).toDispatch(); Dispatch.invoke(doc,"SaveAs", Dispatch.Method, new Object[]{tpFile,new Variant(8)}, new int[1]); Variant f = new Variant(false); Dispatch.call(doc, "Close", f); flag = true; } catch (Exception e) { e.printStackTrace(); } finally { app.invoke("Quit", new Variant[] {}); }
} } 2。用apache的poi来抽取word,excel。 poi是apache的一个项目,不过就算用poi你可能都觉得很烦,不过不要紧,这里提供了更加简单的一个接口给你: 下载经过封装后的poi包: http://www.java-cn.com/technology/tech_downs/1880_002.zip 下载之后,放到你的classpath就可以了,下面是如何使用它的一个例子: import java.io.*; import org.textmining.text.extraction.WordExtractor; /** * <p>Title: pdf extraction</p> * <p>Description: email:chris@matrix.org.cn</p> * <p>Copyright: Matrix Copyright (c) 2003</p> * <p>Company: Matrix.org.cn</p> * @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.java-cn.com/technology/tech_downs/1880_003.zip 下面是一个如何使用pdfbox抽取pdf文件的例子: import org.pdfbox.pdmodel.PDdocument. import org.pdfbox.pdfparser.PDFParser; import java.io.*; import org.pdfbox.util.PDFTextStripper; import java.util.Date; /** * <p>Title: pdf extraction</p> * <p>Description: email:chris@matrix.org.cn</p> * <p>Copyright: Matrix Copyright (c) 2003</p> * <p>Company: Matrix.org.cn</p> * @author chris * @version 1.0,who use this example pls remain the declare */
public class PdfExtracter{
public PdfExtracter(){ } public String GetTextFromPdf(String filename) throws Exception { String temp=null; PDdocument.nbsppdfdocument.null; FileInputStream is=new FileInputStream(filename); PDFParser parser = new PDFParser( is ); parser.parse(); pdfdocument.nbsp= parser.getPDdocument.); ByteArrayOutputStream out = new ByteArrayOutputStream(); OutputStreamWriter writer = new OutputStreamWriter( out ); PDFTextStripper stripper = new PDFTextStripper(); stripper.writeText(pdfdocument.getdocument.), writer ); writer.close(); byte[] contents = out.toByteArray();
String ts=new String(contents); System.out.println("the string length is"+contents.length+" "); return ts; } public static void main(String args[]) { PdfExtracter pf=new PdfExtracter(); PDdocument.nbsppdfdocument.nbsp= null;
try{ String ts=pf.GetTextFromPdf("c:a.pdf"); System.out.println(ts); } catch(Exception e) { e.printStackTrace(); } }
}
4.抽取支持中文的pdf文件-xpdf xpdf是一个开源项目,我们可以调用他的本地方法来实现抽取中文pdf文件。 下载xpdf函数包: http://www.java-cn.com/technology/tech_downs/1880_004.zip 同时需要下载支持中文的补丁包: http://www.java-cn.com/technology/tech_downs/1880_005.zip 按照readme放好中文的patch,就可以开始写调用本地方法的java程序了 下面是一个如何调用的例子: import java.io.*; /** * <p>Title: pdf extraction</p> * <p>Description: email:chris@matrix.org.cn</p> * <p>Copyright: Matrix Copyright (c) 2003</p> * <p>Company: Matrix.org.cn</p> * @author chris * @version 1.0,who use this example pls remain the declare */
public class PdfWin { public PdfWin() { } public static void main(String args[]) throws Exception { String PATH_TO_XPDF="C:Program Filesxpdfpdftotext.exe"; String filename="c:a.pdf"; String[] cmd = new String[] { PATH_TO_XPDF, "-enc", "UTF-8", "-q", filename, "-"}; Process p = Runtime.getRuntime().exec(cmd); BufferedInputStream bis = new BufferedInputStream(p.getInputStream()); InputStreamReader reader = new InputStreamReader(bis, "UTF-8"); StringWriter out = new StringWriter(); char [] buf = new char[10000]; int len; while((len = reader.read(buf))>= 0) { //out.write(buf, 0, len); System.out.println("the length is"+len); } reader.close(); String ts=new String(buf); System.out.println("the str is"+ts); } }
http://hi.baidu.com/stq1102/blog
http://hi.baidu.com/xuecj/blog/item/37b5938b6f1b75d6fd1f103e.html
|
分享到:
相关推荐
JAVA 读取 WORD_EXCEL_POWERPOINT_PDF 文件的方法(poi) JAVA 读取 WORD_EXCEL_POWERPOINT_PDF 文件的方法是使用 Apache POI 库来实现的。POI 库是一个开放源代码的 Java 库,提供了对 Microsoft Office 文件格式...
在IT行业中,生成各种类型的文档是常见的需求,例如PDF、Word和Excel报表。本文将深入探讨如何使用ITEXT库导出PDF和Word,以及利用Apache POI库导出Excel报表文件。 首先,让我们来了解ITEXT库。ITEXT是一个开源...
XMLPUBLISHER允许开发人员设计模板,并使用XML数据填充这些模板来生成报告,如Word文档、PDF、Excel等格式。在这个过程中,People Code可能用于触发XMLPUBLISHER的执行,或者传递必要的数据和指令。 3. **Java 类 ...
在SpringBoot项目中,我们经常需要处理Excel文件的导入与导出功能,这在数据分析、数据交换等场景中尤其常见。Apache POI 是一个流行的Java库,它允许开发者读写Microsoft Office格式的文件,包括Excel。下面我们将...
然后,创建一个控制器(Controller),处理在线编辑Word和Excel的请求。这里需要定义两个主要的方法:一个是打开文档,另一个是保存编辑后的文档。在打开文档的方法中,PageOfficeController提供了打开本地文件或URL...
### Java初学者或开发者查询手册知识点汇总 #### 一、XML文件处理 ...2. **PDFRenderer**: 采用纯Java实现的PDF阅读器和渲染器。 - **特性**: - 可以在应用中查看PDF文件。 - 在导出PDF文件之前进行预览。 ...
在IT行业中,文档格式的转换是...综上所述,Aspose.Word是处理Word到PDF转换任务的理想工具,它的易用性和高性能使其在各种场景下都能发挥重要作用。通过合理的集成和应用,可以极大地提升工作效率,简化文档管理工作。
word、 excel等运行在木机上的应用就属」桌面应用。 2:企业级应用 先解释一下企业级应用:简单的说是大规模的应用,一般使用人数较多,数据量较大, 对系统的稳定性、安全性、可扩展性和可装配性等都有比较高的要求 这是...
Spire.Office.jar是一个强大的Java库,它提供了处理PDF、Excel、Word等多种文档格式的功能,包括添加条码和二维码。 在Maven项目中,你需要在pom.xml文件中添加Spire.Office的依赖,如下所示: ```xml <id>...
例如,使用脚本批量将一批Excel文件转换为CSV,或者批量导出Word文档为PDF。这通常需要编程技能,结合文件遍历和特定应用的API来实现。 6. **集成开发环境(IDE)**:为了提高效率,开发者通常会使用IDE,如Visual ...
根据题目描述,本项目旨在通过Java技术实现一种类似于百度文库或豆丁网的在线文档阅读功能,支持多种格式如TXT/Word/Excel/PPT/Word PDF SWF等文件的在线浏览。实现这一功能的主要技术路线分为四类: 1. **先将文档...
这个工具库可能包含了对Word和Excel文件的特别支持,这可能意味着它集成了Apache POI库,该库允许Java开发者读写Microsoft Office格式的文件,包括HSSF(用于Excel)和XSSF(用于XML-based Excel)。 2. 图片处理:...
除了基本的条形码识别,Aspose.BarCode还可以生成嵌入在PDF、Word、Excel等文档中的条形码,并且支持将条形码作为图片导出。这使得它在文档处理场景下同样实用。 总的来说,Aspose.BarCode for Java是一个强大且...
6. **poi-3.17.jar**:Apache POI是用于处理Microsoft Office格式(如Excel、Word、PowerPoint)的Java库。版本3.17提供了对这些文件格式的广泛支持和改进。 7. **xbean-2.2.0.jar**:Apache XBean是一个轻量级容器...
Apache POI是Java社区开发的一个开源库,主要用于处理Microsoft Office格式的文件,如Word(.doc/.docx)、Excel(.xls/.xlsx)和PowerPoint(.ppt/.pptx)。在我们的场景中,我们将重点讨论如何用POI将HTML转换为...
在Android平台上,开发人员经常需要处理用户打开不同类型文档的需求,如Word、Excel、PowerPoint、PDF等。这个“android 打开各种文档的demo”提供了一个实用的示例,展示了如何在Android应用中实现这一功能。下面将...
报表工具支持PDF、Excel和Word等多种格式的导出,满足多样化需求。 **5. 兼容性与数据库支持** JEECG支持IE6、IE8+、Google Chrome等主流浏览器,确保跨平台兼容性。同时,它兼容SQL Server、Oracle和MySQL等主流...
- Word:通常指的是微软公司的文字处理软件Microsoft Word,是一个在办公自动化中广泛使用的文字处理器。 - Ctrl、Alt、Shift等键:这些是键盘上的控制键,通常与其他键组合使用来执行特定的计算机操作或快捷命令。 ...
- Microsoft Office:包括Word、Excel、PowerPoint等组件,用于文字处理、电子表格和演示文稿制作。 - Google Docs:在线协作编辑工具,支持文档、表格和幻灯片的创建。 - 文档格式转换:如将.docx文件转换为.pdf...
- Office软件:如Word和Excel,是微软公司推出的办公自动化软件,用于文档处理和电子表格管理。 - Internet Explorer:微软开发的网页浏览器,用于访问和浏览互联网上的网页。 4. 计算机网络: - IP地址:全称为...