ExportGrid Aspose.Cells.dll
using Aspose.Cells;
using Aspose.Words;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; namespace WebApplication16
{ public partial class WebForm1 : System.Web.UI.Page
{ public void ExportWord()
{
string filePath = Server.MapPath("~/Template.doc");
string filePath1 = Server.MapPath("~/Template1.doc");
//预先生成数据
List<Student> studentData = new List<Student>();
for (int i = ; i < ; i++)
{
studentData.Add(new Student()
{
name = "学生" + i.ToString("D3"),
schoolName = "某某中学",
num = i,
score = i
});
}
//加载word模板。
Aspose.Words.Document doc = null;
try
{
doc = new Aspose.Words.Document();
}
catch (Exception ex)
{ }
Aspose.Words.DocumentBuilder docWriter = new Aspose.Words.DocumentBuilder(doc);
docWriter.StartTable();
double[] colWidth = new double[] { , , , };
string[] colName = new string[] { "编号", "姓名", "分数", "学校" };
int pageSize = ;
for (int i = , j = studentData.Count; i < j; i++)
{
if (i == )
{ }
if (pageSize== )
{
//word页刚开始,一个表格的开始,要插入一个表头
docWriter.InsertBreak(Aspose.Words.BreakType.ParagraphBreak);
//docWriter.StartTable();
AsposeCreateCell(docWriter, colWidth[], colName[]);
AsposeCreateCell(docWriter, colWidth[], colName[]);
AsposeCreateCell(docWriter, colWidth[], colName[]);
AsposeCreateCell(docWriter, colWidth[], colName[]);
docWriter.EndRow();
//docWriter.EndTable();
}
//else if (pageSize == 30)//经过测算,每页word中可以放置30行
//{
// //结束第一个表格,插入分栏符号,并开始另一个表格
// docWriter.EndTable();
// docWriter.InsertBreak(Aspose.Words.BreakType.ColumnBreak);
// docWriter.InsertBreak(Aspose.Words.BreakType.ParagraphBreak);
// docWriter.StartTable();
// AsposeCreateCell(docWriter, colWidth[0], colName[0]);
// AsposeCreateCell(docWriter, colWidth[1], colName[1]);
// AsposeCreateCell(docWriter, colWidth[2], colName[2]);
// AsposeCreateCell(docWriter, colWidth[3], colName[3]);
// docWriter.EndRow();
//}
//else if (pageSize == 60)//word分栏为2栏,那么一页word可以放60行数据
//{
// //一页word完毕,关闭表格,并绘制下一页的表头。
// docWriter.EndTable();
// docWriter.InsertBreak(Aspose.Words.BreakType.PageBreak);
// docWriter.InsertBreak(Aspose.Words.BreakType.ParagraphBreak);
// docWriter.StartTable();
// AsposeCreateCell(docWriter, colWidth[0], colName[0]);
// AsposeCreateCell(docWriter, colWidth[1], colName[1]);
// AsposeCreateCell(docWriter, colWidth[2], colName[2]);
// AsposeCreateCell(docWriter, colWidth[3], colName[3]);
// docWriter.EndRow();
// pageSize = 0;
//}
pageSize++;
//创建内容
AsposeCreateCell(docWriter, colWidth[], studentData[i].num.ToString());
AsposeCreateCell(docWriter, colWidth[], studentData[i].name);
AsposeCreateCell(docWriter, colWidth[], studentData[i].score.ToString());
AsposeCreateCell(docWriter, colWidth[], studentData[i].schoolName+"_"+i);
docWriter.EndRow();
}//end for
docWriter.EndTable();
//保存文件
doc.Save(filePath1, Aspose.Words.SaveFormat.Doc); }
public void AsposeCreateCell(Aspose.Words.DocumentBuilder builder, double width, string text)
{ builder.InsertCell();
builder.CellFormat.Borders.LineStyle = Aspose.Words.LineStyle.Single;
builder.CellFormat.Borders.Color = System.Drawing.Color.Black;
builder.CellFormat.Width = width;//单元格的宽度
builder.CellFormat.LeftPadding = ;//单元格的左内边距
builder.CellFormat.RightPadding = ;//单元格的右内边距
builder.RowFormat.Height = ;//行高
builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
builder.ParagraphFormat.Alignment = Aspose.Words.ParagraphAlignment.Center;//水平居中对齐
builder.Write(text);
}
protected virtual void ExportGrid(string[] Columns, string title, System.Data.DataTable table, ArrayList ignorColList, bool showHeader)
{ Workbook workbook = new Workbook(); //工作簿
Worksheet sheet = workbook.Worksheets[]; //工作表
sheet.AutoFitColumns();
Cells cells = sheet.Cells;//单元格
Aspose.Cells.Style styleTitle = workbook.Styles[workbook.Styles.Add()];//新增样式
styleTitle.HorizontalAlignment = TextAlignmentType.Center;//文字居中
styleTitle.Font.Name = "宋体";//文字字体
styleTitle.Font.Size = ;//文字大小
styleTitle.Font.IsBold = false;//粗体
//样式2
Aspose.Cells.Style style2 = workbook.Styles[workbook.Styles.Add()];//新增样式
style2.HorizontalAlignment = TextAlignmentType.Center;//文字居中
style2.Font.Name = "宋体";//文字字体
style2.Font.Size = ;//文字大小
style2.Font.IsBold = false;//粗体
style2.IsTextWrapped = true;//单元格内容自动换行
style2.Borders[Aspose.Cells.BorderType.LeftBorder].LineStyle = CellBorderType.Thin;
style2.Borders[Aspose.Cells.BorderType.RightBorder].LineStyle = CellBorderType.Thin;
style2.Borders[Aspose.Cells.BorderType.TopBorder].LineStyle = CellBorderType.Thin;
style2.Borders[Aspose.Cells.BorderType.BottomBorder].LineStyle = CellBorderType.Thin;
Aspose.Cells.Style style3 = workbook.Styles[workbook.Styles.Add()];//新增样式
style3.HorizontalAlignment = TextAlignmentType.Center;//文字居中
style3.Font.Name = "宋体";//文字字体
style3.Font.Size = ;//文字大小
style3.Borders[Aspose.Cells.BorderType.LeftBorder].LineStyle = CellBorderType.Thin;
style3.Borders[Aspose.Cells.BorderType.RightBorder].LineStyle = CellBorderType.Thin;
style3.Borders[Aspose.Cells.BorderType.TopBorder].LineStyle = CellBorderType.Thin;
style3.Borders[Aspose.Cells.BorderType.BottomBorder].LineStyle = CellBorderType.Thin;
if (!string.IsNullOrEmpty(title))
{
int i = Columns.Length;
if (ignorColList != null)
{
i = i - ignorColList.Count;
}
cells.Merge(, , , i);//合并单元格
cells[, ].PutValue(title);//填写内容
cells[, ].SetStyle(styleTitle);
}
int start = string.IsNullOrEmpty(title) ? : ;
int j = ;
if (showHeader)
{
for (var i = ; i < Columns.Length; i++)
{
var c = Columns[i];
if (ignorColList != null && ignorColList.Contains(c))
{
continue;
}
cells[start, j].PutValue(c);
cells[start, j].SetStyle(style2);
j++;
}
}
for (var q = ; q < table.Rows.Count; q++)
{
j = ;
var row = table.Rows[q];
for (var i = ; i < Columns.Length; i++)
{
var c = Columns[i];
if (ignorColList != null && ignorColList.Contains(c))
{
continue;
}
cells[start + + q, j].PutValue(row[c]);
cells[start + + q, j].SetStyle(style3);
cells.SetRowHeight(start + + q, );
j++;
}
} workbook.Save(string.Format("report.xls"), Aspose.Cells.SaveType.OpenInExcel, Aspose.Cells.FileFormatType.Excel2003, Response);
Response.Flush();
Response.End();
}
protected void Page_Load(object sender, EventArgs e)
{
System.Data.DataTable table = new System.Data.DataTable();
table.Columns.Add("id2", typeof(string));
table.Columns.Add("name2", typeof(string)); for (int i = ; i < ; i++)
{
System.Data.DataRow dr = table.NewRow();
dr["id2"] = "id2_" + i;
dr["name2"] = "name2_" + i;
table.Rows.Add(dr);
} string[] columns = { "id2", "name2" }; ExportWord();
//ExportGrid(columns, "柯相彬表格",table,null, true);
Response.Write("ni mei de");
}
}
}
ExportGrid Aspose.Cells.dll的更多相关文章
- C# WinForm 导出导入Excel/Doc 完整实例教程[使用Aspose.Cells.dll]
[csharp] view plain copy 1.添加引用: Aspose.Cells.dll(我们就叫工具包吧,可以从网上下载.关于它的操作我在“Aspose.Cells操作说明 中文版 下载 ...
- C# WinForm使用Aspose.Cells.dll 导出导入Excel/Doc 完整实例教程
1.添加引用: Aspose.Cells.dll(我们就叫工具包吧,可以从网上下载.关于它的操作我在“Aspose.Cells操作说明 中文版 下载 Aspose C# 导出Excel 实例”一文中的 ...
- Aspose.Cells.dll引用导入导出Excel
Aspose.Cells 导入导出EXCEL 文章出处:http://hi.baidu.com/leilongbing/item/c11467e1819e5417595dd8c1 修改样式 ...
- Aspose.Cells.dll操作execl
附件:Aspose.Cells.dll 1.创建execl(不需要服务器或者客户端安装office) public void DCExexl(DataTable dt) { Workbook wb ...
- C# Aspose.Cells.dll Excel操作总结
简介 Aspose.Cells是一款功能强大的 Excel 文档处理和转换控件,不依赖 Microsoft Excel 环境,支持所有 Excel 格式类型的操作. 下载 Aspose.Cells.d ...
- C# 读写Excel的一些方法,Aspose.Cells.dll
需求:现有2个Excel,一个7000,一个20W,7000在20W是完全存在的.现要分离20W的,拆分成19W3和7000. 条件:两个Excel都有“登录名”,然后用“登录名”去关联2个Excel ...
- C# 利用Aspose.Cells .dll将本地excel文档转化成pdf(完美破解版 无水印 无中文乱码)
Aspose.Cells .dll下载 http://pan.baidu.com/s/1slRENLF并引用 C#代码 using System; using System.Collections. ...
- Aspose.Cells.dll的用法
public void OutExcel() { #region WorkbookDesigner designer = new WorkbookDesigner(); Worksheet sheet ...
- Aspose Cells dll 实现数据简单下载
Workbook workbook = new Workbook(); //工作簿 Worksheet sheet = workbook.Worksheets[ ...
随机推荐
- web 浏览器窗口window 与框架 frameset 的关系
如果页面包含框架,则每个框架都拥有自己的window对象,并且保存在frames集合中,可以通过数字索引(从0开始,从左右到右,从上到下)或者框架名称来访问相对应的window对象. 每个window ...
- metasploit framework(十三):FTP扫描
设置目标IP 查看是否支持匿名登录 获取到版本信息 使用ftp登录模块 搜索刚才获取到的版本信息,找到一个针对这个版本的漏洞利用代码
- 【Django】关于scss 的安装
今天看视频教程的时候发现老师的样式文件改用了scss(然鹅我买的1块钱特价课程其实是节选出来的,所以前面没有看到过关于scss的介绍) 然后我本以为把原来的css改名字为scss就行,然鹅没有效果. ...
- 数据库类型空间效率探索(四)-tinyint与enum与set
mysql> select count(*) from userinfo;+----------+| count(*) |+----------+| 115597 |+----------+1 ...
- CentOS ln 链接
ln -s /u01/app/oracle/product/11.2.0/dbhome_1/bin/sqlplus/ /usr/bin (解决bash: sqlplus: command not fo ...
- IE浏览器调试工具不能使用
Mac 使用VMware Fusion虚拟机,安装Windows 7 Service Pack 1 (SP1). 移除自带的IE8,下载并安装IE11(64位). IE 11 调试工具不能使用,并且调 ...
- TZOJ 2546 Electricity(去掉割点后形成的最大连通图数)
描述 Blackouts and Dark Nights (also known as ACM++) is a company that provides electricity. The compa ...
- TZOJ 2999 Network(连通图割点数量)
描述 A Telephone Line Company (TLC) is establishing a new telephone cable network. They are connecting ...
- f5故障排除
1.硬件问题 1)硬盘:查看/var/log/daemon, kern日志,smartctl测试,EUD 2)PSU: 查看LCD报警,/var/log/ltm,EUD等 3)内存:可能导致设备突然重 ...
- RecyclerView的点击事件添加-------接口回调的形式添加
package com.example.recyclerviewdemo; import android.support.v7.widget.RecyclerView; import android. ...