首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > CSS >

运用java框架POI将word转换成html格式

2013-04-12 
使用java框架POI将word转换成html格式import java.io.ByteArrayOutputStreamimport java.io.Fileimport

使用java框架POI将word转换成html格式

import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import javax.xml.transform.OutputKeys;import javax.xml.transform.Transformer;import javax.xml.transform.TransformerException;import javax.xml.transform.TransformerFactory;import javax.xml.transform.dom.DOMSource;import javax.xml.transform.stream.StreamResult;import org.apache.poi.hwpf.HWPFDocument;import org.apache.poi.hwpf.converter.PicturesManager;import org.apache.poi.hwpf.converter.WordToHtmlConverter;import org.apache.poi.hwpf.usermodel.PictureType;import org.w3c.dom.Document;public class WordToHtml {/** * @param args * @throws IOException  * @throws ParserConfigurationException  * @throws TransformerException  */public static void main(String[] args) throws IOException, ParserConfigurationException, TransformerException {        final String path = "d:/temp/";        final String file = "1.doc";        InputStream input = new FileInputStream(path + file);        HWPFDocument wordDocument = new HWPFDocument(input);        WordToHtmlConverter wordToHtmlConverter = new WordToHtmlConverter(DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument());        wordToHtmlConverter.setPicturesManager(new PicturesManager() {            public String savePicture(byte[] content, PictureType pictureType, String suggestedName, float widthInches, float heightInches) {                File file = new File(path + suggestedName);            try {OutputStream os = new FileOutputStream(file);os.write(content);os.close();} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}            return path + suggestedName;            }        });        wordToHtmlConverter.processDocument(wordDocument);        Document htmlDocument = wordToHtmlConverter.getDocument();        File htmlFile = new File(path + "1.html");        OutputStream outStream = new FileOutputStream(htmlFile);        DOMSource domSource = new DOMSource(htmlDocument);        StreamResult streamResult = new StreamResult(outStream);         TransformerFactory tf = TransformerFactory.newInstance();        Transformer serializer = tf.newTransformer();        serializer.setOutputProperty(OutputKeys.ENCODING, "utf-8");        serializer.setOutputProperty(OutputKeys.INDENT, "yes");        serializer.setOutputProperty(OutputKeys.METHOD, "html");        serializer.transform(domSource, streamResult);        outStream.close();}}


热点排行