Jacob方式将html静态页面导出生成word文档
jopen
9年前
摘要 这种方式的好处是生成的word文档 用office打开时默认是页面视图,而不会是web视图。
/************* * JACOB方式 * notes:需要将jacob.dll拷贝到windows/system32和classpath路径下 * @param html html静态页面路径 * @param wordFile 要生成的word文档路径 */ public static void htmlToWord(String html, String wordFile) { ActiveXComponent app = new ActiveXComponent("Word.Application"); // 启动word try { app.setProperty("Visible", new Variant(false)); Dispatch wordDoc = app.getProperty("Documents").toDispatch(); wordDoc = Dispatch.invoke(wordDoc, "Add", Dispatch.Method, new Object[0], new int[1]).toDispatch(); Dispatch.invoke(app.getProperty("Selection").toDispatch(), "InsertFile", Dispatch.Method, new Object[] { html, "", new Variant(false), new Variant(false), new Variant(false) }, new int[3]); Dispatch.invoke(wordDoc, "SaveAs", Dispatch.Method, new Object[] {wordFile, new Variant(1)}, new int[1]); Dispatch.call(wordDoc, "Close", new Variant(false)); } catch (Exception e) { e.printStackTrace(); } finally { app.invoke("Quit", new Variant[] {}); } }