【发布时间】:2010-05-11 06:02:47
【问题描述】:
如何使用 ASP.Net 和 C# (2008) 创建扩展名为 .doc 和 .docx 的 Word 文档文件?
【问题讨论】:
如何使用 ASP.Net 和 C# (2008) 创建扩展名为 .doc 和 .docx 的 Word 文档文件?
【问题讨论】:
我更喜欢避免使用 com 路由,而是在响应流中生成文档。这对我来说非常有效。希望对您有所帮助。
Response.ContentType = "application/msword";
Response.ContentEncoding = System.Text.UnicodeEncoding.UTF8;
Response.Charset = "UTF-8";
Response.AppendHeader("Content-Disposition", "attachment; filename=" + "mydoc.doc");
Response.Write("<html xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:w='urn:schemas-microsoft-com:office:word' xmlns='http://www.w3.org/TR/REC-html40'>");
Response.Write("<head>");
Response.Write("<!--[if gte mso 9]> <xml> <w:WordDocument> <w:View>Print</w:View> <w:Zoom>100</w:Zoom> <w:DoNotOptimizeForBrowser/> </w:WordDocument> </xml> <![endif]-->");
Response.Write("<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"\"text/html; charset=UTF-8\"\">");
Response.Write("<meta name=ProgId content=Word.Document>");
Response.Write("<meta name=Generator content=\"Microsoft Word 9\">");
Response.Write("<meta name=Originator content=\"Microsoft Word 9\">");
Response.Write("</head>");
Response.Write("<body>");
Response.Write("<div class=Section2>");
// write some content here
Response.Write("</body>");
Response.Write("</html>");
HttpContext.Current.Response.Flush();
【讨论】:
OfficeWriter 是针对 ASP.NET 使用而优化的 DOC 和 DOCX API。您可以使用它创建两种文件格式:
【讨论】: