生成带表头的Excel文件,格式如下显示。

当然更复杂的一些也可以通过 合并单元格的方法 public void Merge(int firstRow, int firstColumn, int totalRows, int totalColumns)来实现。

下载链接:http://download.csdn.net/detail/nxgliming/6668471

实现方式:

1. 首先,需要添加对"Aspose.Cells.dll"的引用。

2. 实现代码如下:

  1. //新建工作簿
  2. Workbook workbook = new Workbook(); //工作簿
  3. Worksheet sheet = workbook.Worksheets[]; //工作表
  4. Cells cells = sheet.Cells;//单元格
  5.  
  6. Style style = workbook.Styles[workbook.Styles.Add()];//新增样式
  7.  
  8. #region 表头
  9. //标题
  10. style.HorizontalAlignment = TextAlignmentType.Center;//文字居中
  11. style.Font.Name = "宋体";//文字字体
  12. style.Font.Size = ;//文字大小
  13. style.Font.IsBold = true;//粗体
  14.  
  15. cells.Merge(, , , ); //合并单元格
  16. cells[, ].PutValue("标准化工作意见建议汇总表"); //填写内容
  17. cells[, ].SetStyle(style); //给单元格关联样式
  18. cells.SetRowHeight(, ); //设置行高
  19.  
  20. //发布时间
  21. style.HorizontalAlignment = TextAlignmentType.Left;
  22. style.Font.Size = ;
  23. style.Font.IsBold = false;
  24. cells.Merge(, , , );
  25. cells[, ].PutValue(String.Format("发布起止时间:{0}至{1}",DateTime.Now.AddDays(-).ToString("yyyy年MM月dd日"),DateTime.Now.ToString("yyyy年MM月dd日")));
  26. cells[, ].SetStyle(style);
  27. cells.SetRowHeight(, );
  28.  
  29. //统计时间
  30. style.HorizontalAlignment = TextAlignmentType.Right;
  31. style.Font.Size = ;
  32. style.Font.IsBold = false;
  33. cells.Merge(, , , );
  34. cells[, ].PutValue(String.Format("统计时间:{0}", DateTime.Now.ToString("yyyy年MM月dd日")));
  35. cells[, ].SetStyle(style);
  36. cells.SetRowHeight(, );
  37. #endregion
  38.  
  39. #region 表格
  40.  
  41. #region 表格标题行
  42. //序号
  43. style.HorizontalAlignment = TextAlignmentType.Center;
  44. cells[, ].PutValue("序号");
  45. cells[, ].SetStyle(style);
  46. cells.SetRowHeight(, );
  47. cells.SetColumnWidthPixel(, );
  48.  
  49. //建议时间
  50. cells[, ].PutValue("建议时间");
  51. cells[, ].SetStyle(style);
  52. cells.SetColumnWidthPixel(, );
  53.  
  54. //建议部门
  55. cells[, ].PutValue("建议部门");
  56. cells[, ].SetStyle(style);
  57. cells.SetColumnWidthPixel(, );
  58.  
  59. //建 议 人
  60. cells[, ].PutValue("建 议 人");
  61. cells[, ].SetStyle(style);
  62. cells.SetColumnWidthPixel(, );
  63.  
  64. //类 别
  65. cells[, ].PutValue("类 别");
  66. cells[, ].SetStyle(style);
  67. cells.SetColumnWidthPixel(, );
  68.  
  69. //业务种类
  70. cells[, ].PutValue("业务种类");
  71. cells[, ].SetStyle(style);
  72. cells.SetColumnWidthPixel(, );
  73.  
  74. //标准名称
  75. cells[, ].PutValue("标准名称");
  76. cells[, ].SetStyle(style);
  77. cells.SetColumnWidthPixel(, );
  78.  
  79. //标准章、条编号
  80. cells[, ].PutValue("标准章、条编号");
  81. cells[, ].SetStyle(style);
  82. cells.SetColumnWidthPixel(, );
  83.  
  84. //意见建议
  85. cells[, ].PutValue("意见建议");
  86. cells[, ].SetStyle(style);
  87. cells.SetColumnWidthPixel(, );
  88.  
  89. //处理部门
  90. cells[, ].PutValue("处理部门");
  91. cells[, ].SetStyle(style);
  92. cells.SetColumnWidthPixel(, );
  93.  
  94. //处理进度
  95. cells[, ].PutValue("处理进度");
  96. cells[, ].SetStyle(style);
  97. cells.SetColumnWidthPixel(, );
  98.  
  99. //备注
  100. cells[, ].PutValue("备注");
  101. cells[, ].SetStyle(style);
  102. cells.SetColumnWidthPixel(, );
  103.  
  104. #endregion
  105.  
  106. #endregion
  107.  
  108. System.IO.MemoryStream ms = workbook.SaveToStream();//生成数据流
  109. byte[] bt = ms.ToArray();
  110.  
  111. workbook.Save(@"E:\test.xls");//保存到硬盘
  112. }

3. 生成好的Excel可以保存到磁盘,也可以在web页面上通过流的方式来下载。

  1. //下载
  2. System.IO.MemoryStream ms = workbook.SaveToStream();//生成数据流
  3. byte[] bt = ms.ToArray();
  4.  
  5. string fileName = "标准化工作意见建议汇总表" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";//客户端保存的文件名
  6. //以字符流的形式下载文件
  7.  
  8. Response.ContentType = "application/vnd.ms-excel";
  9.  
  10. //通知浏览器下载文件而不是打开
  11. Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
  12. Response.BinaryWrite(bt);
  13.  
  14. Response.Flush();
  15. Response.End();

使用Aspose.Cells组件生成Excel文件的更多相关文章

  1. C# Aspose.Cells方式导入Excel文件

    读取Excel 类 我返回的是DataTable 类型 也可以返回DataSet类型 public class XlsFileHelper { public DataTable ImportExcel ...

  2. 【转】 (C#)利用Aspose.Cells组件导入导出excel文件

    Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...

  3. (C#)利用Aspose.Cells组件导入导出excel文件

    Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...

  4. Aspose.Cell和NPOI生成Excel文件

    1.使用Aspose.Cell生成Excel文件,Aspose.Cell是.NET组件控件,不依赖COM组件 1首先一点需要使用新建好的空Excel文件做模板,否则容易产生一个多出的警告Sheet 1 ...

  5. NPOI、MyXls、Aspose.Cells 导入导出Excel(转)

    Excel导入及导出问题产生: 从接触.net到现在一直在维护一个DataTable导s出到Excel的类,时不时还会维护一个导入类.以下是时不时就会出现的问题: 导出问题: 如果是asp.net,你 ...

  6. Aspose.Cells 导入导出EXCEL(转)

    Aspose.Cells 导入导出EXCEL      修改样式        Workbook workbook = new Workbook(); //工作簿          Worksheet ...

  7. 使用Microsoft.Office.Interop.Excel.dll 文件来生成excel 文件

    日常工作中经常需要将后台的数据导出成excel  格式,这里通过调用微软提供的类库来生成excel 文件. 具体是引用 了Microsoft.Office.Interop.Excel.dll 类库文件 ...

  8. 利用kettle组件导入excel文件到数据库

    利用kettle组件导入excel文件到数据库 1.     实现目标 把excel文件内容导入到目标表中:然后用java调用kettle的转换.excel文件的内容仅仅有两列,示比例如以下: wat ...

  9. 如何生成excel文件作为图像识别结果

    如何生成excel文件作为图像识别结果 在进行大规模图像处理的时候,如果能够以表格的形式生成结果文件,将非常的直观.这个时候,选择excel作为结果输出文件,将是合适的. 查询相关资料,有很多关于ex ...

随机推荐

  1. Unity bundle的制作和使用

    原地址:http://unity3d.9ria.com/?p=2863 Unity有个很好的功能,大致是很多专注于PC的engine没有提供的(因为没有必要),就是能加载主包外的资源,这个主包外的资源 ...

  2. HDU 3255 Farming (线段树+扫面线,求体积并)

    题意:在一块地上种蔬菜,每种蔬菜有个价值.对于同一块地蔬菜价值高的一定是最后存活,求最后的蔬菜总值. 思路:将蔬菜的价值看做高度的话,题目就转化成求体积并,这样就容易了. 与HDU 3642 Get ...

  3. 调用MYSQL存储过程实例

    PHP调用MYSQL存储过程实例 http://blog.csdn.net/ewing333/article/details/5906887 http://www.cnblogs.com/kkchen ...

  4. iOS导航栏-导航栏透明

    设置一张透明图片:nav_bargound.png  //导航栏背景     [self.navigationController.navigationBar setBackgroundImage:[ ...

  5. 即时通讯UI-聊天界面(UITableView显示左右两人聊天)

    目录 1.创建UITableView对象并设置相关属性 2.创建cellModel模型 //枚举类型 typedef enum { ChatMessageFrom = ,//来自对方的消息 ChatM ...

  6. Android中的Adapter总结

    一.Adapter的介绍 An Adapter object acts as a bridge between an AdapterView and the underlying data for t ...

  7. SQL语句AND 和 OR执行的优先级

    例句: ) FROM RT_CUSTALLOCRESULT WHERE REGDATE BETWEEN '2014-03-01' AND '2014-03-31' ) FROM RT_CUSTALLO ...

  8. linux系统下挂载windows共享目录

    在工作中有时我们需要在linux上挂载windows共享目录.首先我们需要学会在linux上查看windows共享了那些目录.查看操作需要安装samba-client. [root@ ~]# yum ...

  9. NPOI之Excel——合并单元格、设置样式、输入公式

    首先建立一个空白的工作簿用作测试,并在其中建立空白工作表,在表中建立空白行,在行中建立单元格,并填入内容: //建立空白工作簿 IWorkbook workbook = new HSSFWorkboo ...

  10. git入门-分支

    1. git分支简介 使用分支可以让你从开发主线上分离开来,然后在新的分支上解决特定问题,同时不会影响主线.像其它的一些版本控制系统,创建分支需要创建整个源代码目录的副本.而Git 的分支是很轻量级的 ...