java操作word挺不方便的,工具是有很多,但是不管如何纯java的方法效果总是不尽人意。例如doc格式转pdf这个需求我试了很多办法都不成功,最后只好另辟蹊径用外部脚本调用com组件的方式去做。毕竟对word操作能力最强大的还是office本身。
这种方法的限制在于,只能在windows服务器上运行,服务器还必须安装了合适版本的office。
实现
vbs是微软自家的东西,调用起com很简单,直接上代码:
path = createobject("Scripting.FileSystemObject").GetFile(Wscript.ScriptFullName).ParentFolder.Path
Set word = CreateObject("Word.application")
Set docx = word.Documents.Open(path & "\" & "tmp.doc")
docx.SaveAs path & "\" & "tmp.pdf"