java使用poi读取ppt文件和poi读取excel-word示例.pdf
文本预览下载声明
java使用 poi读取 ppt 文件和 poi读取 excel、word示例
Apache 的POI项目可以用来处理MSOffice文档,codeplex上还有一个它的.net版本。POI项目可
创建和维护操作各种基于OOXML和OLE2文件格式的JavaAPI。大多数MSOffice都是OLE2格
式的。POI通HSMF子项目来支持Outlook,通过HDGF子项目来支持Visio,通过HPBF子项目
来支持Publisher。
使用POI抽取Word简单示例:
要引入poi-3.7.jat和poi-scratchpad-3.7.ajr这两个包。
复制代码代码如下:
packagemsoffice;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.IOException;
importjava.io.InputStream;
import org.apache.poi.hwpf.HWPFDocument;
import org.apache.poi.hwpf.extractor.WordExtractor;
import org.apache.poi.hwpf.usermodel.CharacterRun;
import org.apache.poi.hwpf.usermodel.Paragraph;
import org.apache.poi.hwpf.usermodel.Range;
import org.apache.poi.hwpf.usermodel.Section;
publicclassWord {
// 直接抽取全部内容
public static StringreadDoc1(InputStream is)throwsIOException {
WordExtractor extractor new WordExtractor(is);
return extractor.getText();
}
//分章节Section、段落Paragraph、字符串CharacterRun抽取
public staticvoidreadDoc2(InputStream is)throwsIOException {
HWPFDocument doc newHWPFDocument(is);
Ranger doc.getRange();
for(intx 0;xr.numSections();x++){
Section s r.getSection(x);
for(inty 0;ys.numParagraphs();y++){
Paragraphp s.getParagraph(y);
for(int z 0;zp.numCharacterRuns();z++){
CharacterRunrun p.getCharacterRun(z);
Stringtext run.text();
System.out.print(text);
}
}
}
}
public staticvoidmain(String[] args) {
File file new File(/home/orisun/1.doc);
try {
FileInputStream fin new FileInputStream(file);
String cont readDoc1(fin);
System.out.println(cont);
fin.close();
fin new FileInputStream(file);
readDoc2(fin);
fin.close();
}catch (IOException e) {
e.printStackTrace();
}
}
}
POI抽取PPT示例:
复制代码代码如下:
packagemsoffice;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.IOException;
importjava.io.InputStream;
im
显示全部