您好,登錄后才能下訂單哦!
廢話,不多說直接上代碼。
/ * word轉html
* html轉圖片
* @param tagPath 轉換html文件之后,所帶的圖片附件文件夾
* @param sourceFileName 源文件
* @param outPath 輸出文件xx.html
* @return
* @throws Exception
*/
public static String docToHtml(String tagPath,
String sourceFileName, String outPath) throws Exception {
File file = new File(tagPath);
if(!file.exists()) {
file.mkdirs();
}
HWPFDocument wordDocument = new HWPFDocument(new FileInputStream(sourceFileName));
org.w3c.dom.Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
WordToHtmlConverter wordToHtmlConverter = new WordToHtmlConverter(document);
//保存圖片,并返回圖片的相對路徑
wordToHtmlConverter.setPicturesManager((content, pictureType, name, width, height) -> {
try (FileOutputStream out = new FileOutputStream(tagPath + name)) {
out.write(content);
} catch (Exception e) {
e.printStackTrace();
}
return "image/" + name;
});
wordToHtmlConverter.processDocument(wordDocument);
org.w3c.dom.Document htmlDocument = wordToHtmlConverter.getDocument();
DOMSource domSource = new DOMSource(htmlDocument);
StreamResult streamResult = new StreamResult(new File(outPath));
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);
return outPath;
}
調用:
/**doc
* 轉html
*/
String tagPath = "D:\\red_ant_file\\20180915\\image\\";
String sourcePath = "D:\\red_ant_file\\20180915\\RedAnt的實驗作業.doc";
String outPath = "D:\\red_ant_file\\20180915\\123.html";
try {
AllServiceIsHere.docToHtml(tagPath, sourcePath, outPath);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
演示:
走你:
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。