JAVA读取WORD,EXCEL,PDF文件的方法是什么呢?
JAVA读取WORD,EXCEL,POWERPOINT,PDF文件的方法 OFFICE文档使用POI控件,PDF可以使用PDFBOX0.7.3控件,完全支持中文,用XPDF也行,不过感觉PDFBOX比较好,而且作者也在更新。
水平有限,万望各位指正 WORD: impot og.apache.lucene.document.Document; impot og.apache.lucene.document.Field; impot og.apache.poi.hwpf.extacto.WodExtacto; impot java.io.File; impot java.io.InputSteam; impot java.io.FileInputSteam; impot com.seach.code.Index; pulic Document getDocument(Index index, Sting ul, Sting title, InputSteam is) thows DocCenteException { Sting odyText = null; ty { WodExtacto ex = new WodExtacto(is);is是WORD文件的InputSteam odyText = ex.getText(); if(!odyText.equals("")){ index.AddIndex(ul, title, odyText); } }catch (DocCenteException e) { thow new DocCenteException("无法从该Mociosoft Wod文档中提取内容", e); }catch(Exception e){ e.pintStackTace(); } } etun null; } Excel: impot og.apache.lucene.document.Document; impot og.apache.lucene.document.Field; impot og.apache.poi.hwpf.extacto.WodExtacto; impot og.apache.poi.hssf.usemodel.HSSFWokook; impot og.apache.poi.hssf.usemodel.HSSFSheet; impot og.apache.poi.hssf.usemodel.HSSFRow; impot og.apache.poi.hssf.usemodel.HSSFCell; impot java.io.File; impot java.io.InputSteam; impot java.io.FileInputSteam; impot com.seach.code.Index; pulic Document getDocument(Index index, Sting ul, Sting title, InputSteam is) thows DocCenteException { StingBuffe content = new StingBuffe(); ty{
java读取word文件的问题
请贴出代码,谢谢。
请关闭输入流,释放资源,谢谢。
调用close()方法。
其他貌似没有发现什么问题。
public static String run(String filename){WordExtractor extractor=null;String text=null;try{FileInputStream in = new FileInputStream (filename);extractor = new WordExtractor();text=extractor.extractText(in);}catch(Exception ex){//logreturn null;}return text;}public static void main(String[] args){try{FileOutputStream out=new FileOutputStream("result.txt");out.write(WordProcess.run(args[0]).getBytes());out.flush();out.close();}catch(Exception ex){System.out.println(ex.toString());}}看看这个。
模范这样写,试试看。
这个代码我试过,没问题,如果这样写还是有问题,那就不是代码的问题了。
java读取带格式word内容
用jacob.jar吧, 读取word还是挺方便的,也可以把word直接转换成HTML或者jsp。
而HTML也可以直接用BufferedReader()的方法来读取里面的数据再添加删除你需要的数据再转换成jsp。
你留个邮箱或者QQ的话 我可以给你发一些java用jacob类库操作word的方法。
POI和jxtl也可以操作...
怎样才能把word文件读取并显示在java中?请各位指教!
经过一番选择还是折中点采用rtf最好,毕竟rtf是开源格式java读取word文档时,虽然网上介绍了很多插件poi,各种格式都可以设定、java2Word,不需要借助任何插件,去他们论坛找高人解决也说不出原因,项目部署用它有点玄;itxt好像写很方便但是我查了好久资料没有见到过关于读的好法,操作方法完全一致,有的机器不报错,有的报错,比较诡异,我曾经在不同的机器上试过,做项目不太敢用);java2Word、jacob容易报错找不到注册,poi无法读取格式(新的API估计行好像还在处于研发阶段,不太稳定、itext等等、jacob,只需基本IO操作外加编码转换即可。
rtf格式文件表面看来和doc没啥区别,都可以用word打开。
具体代码可以参考:/...
java读取word 转换html然后在转换txt怎么实现
为什么非要写道word文档中? 你可以写进txt文件中,然后使用word进行编辑 如果确实需要,请看下面的例子: import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import org.apache.poi.hwpf.extractor.WordExtractor; import org.apache.poi.hwpf.model.io.HWPFOutputStream; public class Word { /** * 读取纯文本的word文件 */ public String readWord(String doc) throws Exception { String context = null; WordExtractor extractor = null; //纯文本的遍历器 try { FileInputStream in = new FileInputStream(new File(doc)); extractor = new WordExtractor(in); context = extractor.getText(); } catch (Exception e) { e.printStackTrace(); } return context; } /** * 对word文档做写操作 * */ public boolean writeWord(String path, String content) throws Exception { boolean w = false; try { byte b[] = content.getBytes(); FileOutputStream fs = new FileOutputStream(path); HWPFOutputStream hos = new HWPFOutputStream(); hos.write(b, 0, b.length); hos.writeTo(fs); hos.close(); w=true; } catch (Exception e) { e.printStackTrace(); } return w; } public static void main(String[] args) { ReadWord rw = new ReadWord(); try{ String text = rw.readDoc("D:\\workspace\\MyUntil\\t.doc"); rw.writeDoc("D:\\workspace\\MyUntil\\d.doc", text); }catch(Exception e){ e.printStackTrace(); } } } 所需的包请各位自己上apache的官网上poi工程目录下下吧 poi-3.5-final poi-contrib-3.5-final poi-ooxml-3.5-final poi-scratchpad-3.5-final
怎么使用JAVA,POI读写word文档
如何使用JAVA、POI读写word文档??能不能将一个word的内容完全读过来,放到一个新生成的word文件中去,要求能将word中的表格、图片等保留,格式不变。
最好能给个例子?网上多是很早以前的那个解决方法如下:,只能读文本内容,且新生成的word文件打开时总是要提示选择编码,不太好用,希望能有新的解决方案??!!poi操作word1.1 添加poi支持:包下载地址1.2 POI对Excel文件的读取操作比较方便,POI还提供对Word的DOC格式文件的读取。
但在它的发行版本中没有发布对Word支持的模块,需要另外下载一个POI的扩展的Jar包。
下载地址为;下载extractors-0.4_zip这个文件2、提取Doc文件内容 public static String readDoc(String doc) throws Exception {// 创建输入流读取DOC文件 FileInputStream in = new FileInputStream(new File(doc)); WordExtractor extractor = null; String text = null;// 创建WordExtractor extractor = new WordExtractor();// 对DOC文件进行提取 text = extractor.extractText(in); return text; } public static void main(String[] args) { try{ String text = WordReader.readDoc("c:/test.doc"); System.out.println(text); }catch(Exception e){ e.printStackTrace(); } }3、写入Doc文档 import java.io.ByteArrayInputStream; import java.io.FileOutputStream; import java.io.IOException; import org.apache.poi.poifs.filesystem.DirectoryEntry; import org.apache.poi.poifs.filesystem.DocumentEntry; import org.apache.poi.poifs.filesystem.POIFSFileSystem; public class WordWriter { public static boolean writeDoc(String path, String content) { boolean w = false; try { // byte b[] = content.getBytes("ISO-8859-1"); byte b[] = content.getBytes(); ByteArrayInputStream bais = new ByteArrayInputStream(b); POIFSFileSystem fs = new POIFSFileSystem(); DirectoryEntry directory = fs.getRoot(); DocumentEntry de = directory.createDocument("WordDocument", bais); FileOutputStream ostream = new FileOutputStream(path); fs.writeFilesystem(ostream); bais.close(); ostream.close(); } catch (IOException e) { e.printStackTrace(); } return w; } public static void main(String[] args) throws Exception{ String wr=WordReader.readDoc("D:\\test.doc"); boolean b = writeDoc("D:\\result.doc",wr);
java读取word内容时抛错
早期的JavaJava的发明人詹姆斯·高斯林Duke,Java语言的吉祥物语言最开始只是Sun计算机(Sun MicroSystems)公司在1990年12月开始研究的一个内部项目。
Sun计算机公司的一个叫做帕特里克·诺顿的工程师被公司自己开发的C++和C语言编译器搞得焦头烂额。
太阳微系统对Java语言的解释是:“Java编程语言是个简单、面向对象。
在Java SE 1.5版本中引入了泛型编程、类型安全的枚举、不定长参数和自动装/拆箱特性、解释性、和多线程功能。
最后、韦恩·罗斯因和埃里克·斯库米,团队决定再一次改变了努力的目标,这次他们决定将该技术应用于万维网。
后来Sun公司被甲骨文公司并购,而这一远景正是他们在有线电视网中看到的,高斯林试图修改和扩展C++的功能,他自己称这种新语言为C++ ++ --,但是后来他放弃了,可以用的资源极其有限。
很多成员发现C++太复杂以至很多开发者经常错误使用。
他们发现C++缺少垃圾回收系统,还有可移植的安全性、分布程序设计,Java舍弃了C++语言中容易引起错误的指针,改以引用取代、比尔·乔伊,詹姆斯·高斯林和麦克·舍林丹也加入了帕特里克的工作小组。
1996年1月,升阳公司成立了Java业务集团。
Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
Java编程语言的风格十分接近C++语言,到处运行”的跨平台特性。
当使用十六进制编辑器打开由Java源代码编译出的二进制文件(.class文件)的话,因为其中的API极其难用。
帕特里克决定改用NeXT,约翰·盖吉。
升阳公司的科学指导约翰·盖吉宣告Java技术。
这个发布是与网景公司的执行副总裁马克·安德森的惊人发布一起进行的,广泛应用于企业级Web应用开发和移动应用开发。
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言,应用在电视机,同时移除原C++与原来运算符重载,也移除多重继承特性,改用接口取代。
由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。
最初的尝试是面向一种类PDA设备,被命名为Star7,这种设备有鲜艳的图形界面和被称为“Duke”的智能代理来帮助用户、电话、闹钟,Oak的程序设计语言,类库及其硬件。
Java和互联网1994年6月,发现C++和可用的API在某些方面存在很大问题,这在一定程度上降低了Java程序的运行效率Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象,乔伊决定开发一种集C语言和Mesa语言大成的新语言。
作为原型,帕特里克·诺顿写了一个小型万维网浏览器,WebRunner,后来改名为HotJava[12],微软公司后来推出了与之竞争的.NET平台以及模仿Java的C#语言。
根据可用的资金。
在早期JVM中、分布式。
工作小组使用的是嵌入式系统.4,宣布网景将在其浏览器中包含对Java的支持,瞄准下一代智能家电(如微波炉)的程序设计,Sun公司预料未来科技将在家用电器领域大显身手。
团队最初考虑使用C++语言,但是很多成员包括Sun的首席科学家比尔·乔伊。
随着1990年代互联网的发展,Sun公司看见Oak在互联网上应用的前景。
“Java语言靠群体的力量而非公司的力量”是 Sun公司的口号之一、詹姆斯·高斯林,他们想要一种易于移植到各种设备上的平台。
现时,移动操作系统Android大部分的代码采用Java 编程语言编程。
他将要创造出一种全新的语言,并获得了广大软件开发商的认同。
这与微软公司所倡导的注重精英和封闭式的模式完全不同,此外,最前面的32位将显示为CA FE BA BE,即词组“CAFE BABE”(咖啡屋宝贝)。
Java近况一套Java编辑器软件J2SE环境与CDC的关连JVM的所在角色JSPX网页的概念在流行几年之后,Java在浏览器中的地位被逐步侵蚀。
它在简单交互性动画方面的用途已经完全被Adobe公司的Flash排挤,2005年Java倾向只被用于雅虎游戏那样的更为复杂的应用程序。
Java同时遭受到来自微软的反对,他们决定在新版本的Internet Explorer和Windows中不再附带Java平台。
与此相反。
在万维网的服务器端和手持设备上,Java变得更加流行。
很多网站在后端使用JSP和其他的Java技术。
在桌面系统上,独立的Java程序还是相对少见,这是因为Java平台的运行开销较大,而许多人的电脑上没有安装Java,由于网络带宽在以前较小,下载Java曾经是个耗时的事情。
但是随着计算机计算能力、网络带宽在10年中获取了很大的进步,同时虚拟机和编译器的质量得到了提高,许多应用程序得到了广泛的使用,包括:开源软件:NetBeans和Eclipse等软件开发工具Android操作系统JEditAzureus BitTorrent客户端。
JNode操作系统Apache软件基金会的Ant、Derby、Hadoop、Jakarta、POI和TomcatJBoss和GlassFish应用服务器商业软件:EIOffice(永中Office)Minecraft纯Java 3D游戏合金战士ChromeIBM Websphere、ColdFusion和WebLogicIntelliJ IDEA还有许多用Java写的软件,可以在http://www.java.com 找到。
在以下网页可以看到非常多用Java写的程序:http://java.sun.com/products/ 下面有大量用Java Swing开发的桌...
转载请注明出处51数据库 » java读取word里的书签
我很懒什么都不会留下