移動端無法開啟FreeMarker模板生成的Word文件
阿新 • • 發佈:2019-02-18
FreeMarker
通過xml
結構生成Word
文件,在移動端開啟卻顯示的是xml
文件,PC開啟正常,而PC上使用Office
或者Wps
開啟這個文件,另存為一個新的Word
文件,在移動端開啟就正常了。順著這個思路,找到一個解決方案,使用JACOB - Java COM Bridge download,通過Java
程式碼把FreeMarker
生成文件另存為一個新的Word
文件。然而Jacob
目前只能在Windows
平臺使用,希望這個回答可以幫到部分朋友。
public static void main(String[] args) {
ActiveXComponent _app = new ActiveXComponent("Word.Application" );
_app.setProperty("Visible", Variant.VT_FALSE);
Dispatch documents = _app.getProperty("Documents").toDispatch();
// 開啟FreeMarker生成的Word文件
Dispatch doc = Dispatch.call(documents, "Open", "E:\\FreeMarkerXml.doc", Variant.VT_FALSE, Variant.VT_TRUE).toDispatch();
// 另存為新的Word文件
Dispatch.call (doc, "SaveAs", "E:\\NewDoc.doc", Variant.VT_FALSE, Variant.VT_TRUE);
Dispatch.call(doc, "Close", Variant.VT_FALSE);
_app.invoke("Quit", new Variant[] {});
ComThread.Release();
}