内容发布更新时间 : 2025/2/22 20:43:09星期一 下面是文章的全部内容请认真阅读。
java使用poi读取ppt文件和poi读取excel、word示例
java使用poi读取ppt文件和poi读取excel、word示例java使用poi读取ppt文件和poi读取excel、word示例开源中国
发表于 2014-08-18 21:59:28Apache的POI项目可以用来处理MS Office文档,codeplex上还有一个它的.net版本。POI项目可创建和维护操作各种基于OOXML和OLE2文件格式的Java API。大多数MS Office都是OLE2格式的。POI通HSMF子项目来支持Outlook,通过HDGF子项目来支持Visio,通过HPBF子项目来支持Publisher。使用POI抽取Word简单示例:要引入poi-3.7.jat和poi-scratchpad-3.7.ajr这两个包。复制代码 代码如下: package msoffice;import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.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;public class Word { // 直接抽取全部内容
public static String readDoc1(InputStream is) throws IOException {
WordExtractor extractor = new WordExtractor(is); return extractor.getText();
} //分章节Section、段落Paragraph、字符串CharacterRun抽取
public static void readDoc2(InputStream is) throws IOException {
HWPFDocument doc=new HWPFDocument(is); Range r=doc.getRange();
for(int x=0;x<r.numSections();x++){ Section s=r.getSection(x);
for(int y=0;y<s.numParagraphs();y++){ Paragraph p=s.getParagraph(y); for(int
z=0;z<p.numCharacterRuns();z++){ CharacterRun run=p.getCharacterRun(z);
String text=run.text(); System.out.print(text);
} } }
} public static void main(String[] args) { File file = new File(\ 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示例: 复制代码 代码如下:
package msoffice;import java.io.File;