.net根据模板对Word用Aspose Word操作

2018-06-22 07:37:28来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

命名空间:(记得引入ASPJPEGLib.dll)

usingAspose.Words;

1.创建word模版,使用MergeFeild绑定数据

新建一个Word文档,命名为Template.doc

 打开Template.doc必须在菜单的"插入→文档部件→域”找到MergeField并输入相应的域名

 

2.新建cs使用数组提供数据源

  1. stringtempPath = Server.MapPath("~/Docs/Temp/Template.doc");
  2. stringoutputPath = Server.MapPath("~/Docs/Output/Template.doc");
  3. //载入模板
  4. var doc = new Document(tempPath);
  5. //提供数据源
  6. String[] fieldNames = new String[] {"UserName", "Gender", "BirthDay", "Address"};
  7. Object[] fieldValues = new Object[] {"张三", "男", "1988-09-02", "陕西咸阳"};
  8. //合并模版,相当于页面的渲染
  9. doc.MailMerge.Execute(fieldNames, fieldValues);
  10. //保存合并后的文档
  11. doc.Save(outputPath);
  12. //在WebForm中,保存文档到流中,使用Response.?BinaryWrite输出该文件
  13. vardocStream = newMemoryStream();
  14. doc.Save(docStream, SaveOptions.CreateSaveOptions(SaveFormat.Doc));
  15. Response.ContentType = "application/msword";
  16. Response.AddHeader("content-disposition", "attachment; filename=Template.doc");
  17. Response.BinaryWrite(docStream.ToArray());
  18. Response.End();
  19. //在MVC中采用,保存文档到流中,使用base.File输出该文件
  20. vardocStream = newMemoryStream();
  21. doc.Save(docStream, SaveOptions.CreateSaveOptions(SaveFormat.Doc));
  22. returnbase.File(docStream.ToArray(), "application/msword","Template.doc");

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:httpModules与Http模块

下一篇:一个简单的彩色背景图形验证码