过去,如果我希望网页显示为.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页面。
HR全面详细报告 等...
.doc打开正常。 .docx没有。如果我将.docx重命名为.doc,它在Word 2010中打开正常。有什么建议吗?
谢谢! 布拉德
答案 0 :(得分:1)
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)或使用API生成真实的docx文件(例如:http://docx.codeplex.com/)要容易得多。