将网页输出为 DOCX?

Output Web Page as DOCX?

以前,如果我想让网页显示为 .DOC word 文档,我可以在页面加载时这样做:

    Response.AddHeader("content-disposition", "attachment;filename=FullDetail.doc")
    Response.ContentType = "application/vnd.word"

我希望通过以下操作将网页输出为 .DOCX:

    Response.AddHeader("content-disposition", "attachment;filename=FullDetail.docx")
    Response.ContentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"

但它不起作用。我得到一个错误:

无法打开文件FullDetail.docx,因为内容有问题。文件已损坏,无法打开。

两个文件的内容看起来几乎相同 - 只是一个 HTML 页。

人力资源详细报告 等...

.doc 可以正常打开。 .docx 没有。如果我将 .docx 重命名为 .doc,它可以在 Word 2010 中正常打开。有什么建议吗? 

谢谢! 布拉德

docx 文件实际上是一个包含多个其他文件的 zip 文件。例如,新建一个MS Word文档,将文本"Hello world"放入其中并保存(example.docx)。然后将docx文件重命名为"example.zip"并打开。您会发现内容比您预期的要复杂得多。

大多数人发现生成 Word XML 文件要容易得多 (https://msdn.microsoft.com/en-us/library/bb266220(v=office.12).aspx) or use an API for generating a real docx file (for instance: http://docx.codeplex.com/)。