自动化:如何自动将.doc转换为.docx?

siv*_*udh 9 automation

我在一个文件夹中有一堆.doc文件,我需要将其转换为.docx.

手动将.doc转换为.docx非常简单:

  1. 在Word 2007中打开.doc
  2. 点击另存为...
  3. 将其另存为.docx

但是,对数百个文件执行此操作肯定不是很有趣.= p

你会如何自动化?

Dir*_*mar 18

没有必要自动化Word,由于弹出消息而导致相当缓慢和脆弱,或者使用Microsoft的Office文件转换器(ofc.exe),后者具有不必要的复杂用户界面.

最简单,最快捷的方法是安装Office 2007或从Microsoft下载并安装兼容包(如果尚未安装).然后,您可以使用以下命令轻松地将.doc转换为.docx:

"C:\Program Files\Microsoft Office\Office12\wordconv.exe" -oice -nme <input file> <output file>
Run Code Online (Sandbox Code Playgroud)

其中<input file>和<output file>需要是完全限定的路径名​​.

该命令可以使用以下命令轻松应用于多个文档for:

for %F in (*.doc) do "C:\Program Files\Microsoft Office\Office12\wordconv.exe" -oice -nme "%F" "%Fx"
Run Code Online (Sandbox Code Playgroud)


Joh*_*lla 7

最简单的方法是使用命令行Office文件转换器.赶紧跑

ofc
Run Code Online (Sandbox Code Playgroud)

并且魔术发生了.


Fad*_*man 4

自动化Word。

如果您使用 .NET,请将 Microsoft.Office.Interop.Word(确保它是版本 12 - 相当于 Word 2007,以便您可以实现上述目标)引用程序集添加到您的项目中,并使用它自动执行 Word 应用程序执行的操作你想做上面的事。伪代码

  • 创建应用程序对象
  • 使用应用程序对象打开文档(通过为其提供文件名)
  • 使用应用程序对象通过向其提供格式和输出文件名来执行“另存为”
  • 关闭当前文档
  • 循环执行上述操作,直到完成所有文档
  • 用于释放 Word 或 Doc 对象的内务代码

您可以在 google 上找到很多示例,只需搜索 C# 中的 Word Automation 或类似的内容即可。