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,EXCEL,PDF文件的方法是什么呢?
JAVA读取WORD,EXCEL,POWERPOINT,PDF文件的方法 OFFICE文档使用POI控件,PDF可以使用PDFBOX0.7.3控件,完全支持中文,用XPDF也行,不过感觉PDFBOX比较好,而且作者也在更新。
水平有限,万望各位指正 WORD: import org.apache.lucene.document.Document; import org.apache.lucene.document.Field; import org.apache.poi.hwpf.extractor.WordExtractor; import java.io.File; import java.io.InputStream; import java.io.FileInputStream; import com.search.code.Index; public Document getDocument(Index index, String url, String title, InputStream is) throws DocCenterException { String bodyText = null; try { WordExtractor ex = new WordExtractor(is);//is是WORD文件的InputStream bodyText = ex.getText(); if(!bodyText.equals("")){ index.AddIndex(url, title, bodyText); } }catch (DocCenterException e) { throw new DocCenterException("无法从该Mocriosoft Word文档中提取内容", e); }catch(Exception e){ e.printStackTrace(); } } return null; } Excel: import org.apache.lucene.document.Document; import org.apache.lucene.document.Field; import org.apache.poi.hwpf.extractor.WordExtractor; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFCell; import java.io.File; import java.io.InputStream; import java.io.FileInputStream; import com.search.code.Index; public Document getDocument(Index index, String url, String title, InputStream is) throws DocCenterException { StringBuffer content = new StringBuffer(); try{
java读取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如何实现读取word文件并按指定word样式格式输出
经过一番选择还是折中点采用rtf最好,毕竟rtf是开源格式java读取word文档时,虽然网上介绍了很多插件poi,各种格式都可以设定、java2Word,不需要借助任何插件,去他们论坛找高人解决也说不出原因,项目部署用它有点玄;itxt好像写很方便但是我查了好久资料没有见到过关于读的好法,操作方法完全一致,有的机器不报错,有的报错,比较诡异,我曾经在不同的机器上试过,做项目不太敢用);java2Word、jacob容易报错找不到注册,poi无法读取格式(新的API估计行好像还在处于研发阶段,不太稳定、itext等等、jacob,只需基本IO操作外加编码转换即可。
rtf格式文件表面看来和doc没啥区别,都可以用word打开。
具体代码可以参考:/...
转载请注明出处51数据库 » java获取word段落
有文化的文盲_