Aspose.words合并文档、邮件合并功能

来源:互联网 发布:mac 照片所在文件夹 编辑:程序博客网 时间:2024/04/20 06:41

aspose.words  15.12版本


把两个文件合并成一个文件

        string fp1 = Request.PhysicalApplicationPath + "111.doc";        FileStream fs1 = new FileStream(fp1, FileMode.Open);        Document doc1 = new Document(fs1);        string fp2 = Request.PhysicalApplicationPath + "222.doc";        FileStream fs2 = new FileStream(fp2, FileMode.Open);        Document doc2 = new Document(fs2);        Document doc3 = new Document();        doc3.RemoveAllChildren();        doc3.AppendDocument(doc1, ImportFormatMode.UseDestinationStyles);        fs1.Close();        fs2.Close();        fs1.Dispose();        fs2.Dispose();        doc3.AppendDocument(doc2, ImportFormatMode.UseDestinationStyles);        doc3.Save(Request.PhysicalApplicationPath + "333.docx", SaveFormat.Docx);        doc3.Save(Request.PhysicalApplicationPath + "333.pdf", SaveFormat.Pdf);


邮件合并功能,可以将所有文件单独保存,也可以合并保存一个文件

         string fp1 = Request.PhysicalApplicationPath + "1.docx";        FileStream fs1 = new FileStream(fp1, FileMode.Open);        Document doc1 = new Document(fs1);        DataTable dt = GetDataSource();        // Loop though all records in the data source.        Document outDoc = new Document();        outDoc.RemoveAllChildren();        foreach (DataRow row in dt.Rows)        {            Document dstDoc = (Document)doc1.Clone(true);            dstDoc.MailMerge.Execute(row);            outDoc.AppendDocument(dstDoc, ImportFormatMode.KeepSourceFormatting);            //dstDoc.Save(string.Format(Request.PhysicalApplicationPath + "{0}.doc", row["username"]));        }        outDoc.Save(string.Format(Request.PhysicalApplicationPath + "out.doc"));        fs1.Close();        fs1.Dispose();


生成一个示含例表


 private DataTable GetDataSource()    {        DataTable table = new DataTable();        table.Columns.Add("username");        table.Columns.Add("id");        table.Columns.Add("kkkk");        table.Rows.Add("张三", "03-5555555");        table.Rows.Add("李四", "03-5522555");        table.Rows.Add("王武", "03-5554455");        return table;    }

第二个示例改自慧聪控件网

在模板Doc中,先要插入 “域”,MergeFiled, 域名对应表的字段名,

0 0
原创粉丝点击