string templateFile = Server.MapPath("User_tmplt.doc");
string savePath = Server.MapPath("User.doc");Aspose.Words.Document doc = new Aspose.Words.Document(templateFile);Aspose.Words.DocumentBuilder builder = new Aspose.Words.DocumentBuilder(doc);//表数据DataTable nameList = new DataTable();nameList.Columns.Add("编号");nameList.Columns.Add("姓名");nameList.Columns.Add("时间");DataRow row = null;for (int i = 0; i < 3; i++){ row = nameList.NewRow(); row["编号"] = i.ToString().PadLeft(4, '0'); row["姓名"] = "菜鸟程序员 " + i.ToString(); row["时间"] = DateTime.Now.ToString(); nameList.Rows.Add(row);}//获取表头的单元格的宽度List<double> widthList = new List<double>();for (int i = 0; i < nameList.Columns.Count; i++){ builder.MoveToCell(0, 0, i, 0); //移动单元格 double width = builder.CellFormat.Width;//获取单元格宽度 widthList.Add(width);}builder.MoveToBookmark("table"); //开始添加值for (var i = 0; i < nameList.Rows.Count; i++){ for (var j = 0; j < nameList.Columns.Count; j++) { builder.InsertCell();// 添加一个单元格 builder.CellFormat.Borders.LineStyle = LineStyle.Single; builder.CellFormat.Borders.Color = System.Drawing.Color.Black; builder.CellFormat.Width = widthList[j]; builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.VerticalAlignment = CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.Write(nameList.Rows[i][j].ToString()); } builder.EndRow();}doc.Range.Bookmarks["table"].Text = ""; // 清掉标示 doc.Save(savePath);