我正在尝试创建一个简单的Java程序来打开现有的word文档,更改内容并将其保存为.html文件。
无效的部分是将其保存为.html。 问题是,我得到了html文件,但它只是一个重命名的doc文件。所以不是我真正可以使用的.html文件。
这是我在Google上发现的:
Object oWordBasic = Dispatch.call(oWord, "WordBasic").getDispatch();
Dispatch.call((Dispatch) oWordBasic, "FileSaveAs", path);
我需要做什么,将html文件作为输出?
提前谢谢。
答案 0 :(得分:3)
它使用OLE自动化对象来保存文件,因此您必须找到指示文件类型的方法或参数。
这是我可以使用Word录制的宏:
ActiveDocument.SaveAs filename:="asdd.htm", FileFormat:=wdFormatHTML, _
LockComments:=False, Password:="", AddToRecentFiles:=True, WritePassword _
:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _
SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _
False
因此,这意味着您必须向SaveAs方法指示FileFormat:= wdFormatHTML(或常量值)参数。这留给读者一个练习:)
答案 1 :(得分:3)
我想通了,感谢helios提示。
正确的代码是:
Object oWordBasic = Dispatch.call(oWord, "WordBasic").getDispatch();
Dispatch.call((Dispatch) oWordBasic, "FileSaveAs", path, new Variant(8));
变量的参数是输出格式。 (例如8是html,6是rtf,17是pdf) 您可以在WdSaveFormat Enumeration
找到完整列表