利用Aspose.Cells导出Datatable数据
面对一些的格式各样的到处数据的要求,自学了一点 Aspose.Cells中操作Excel知识,如下代码:
/// <summary>
/// DataTable导出Excel
/// </summary>
/// <param name="page">当前页面</param>
/// <param name="my_dt">DataTable</param>
/// <param name="fileName">文件名</param>
/// <param name="title">输入的抬头</param>
public static void ExportExcel(Page page, DataTable my_dt, string fileName, string title = "")
{
Workbook my_wb = new Workbook();
Worksheet sheet = my_wb.Worksheets[];
//title的样式
Aspose.Cells.Style t_style = my_wb.Styles[my_wb.Styles.Add()];
t_style.HorizontalAlignment = TextAlignmentType.Center;//居中
t_style.Font.IsBold = true;
t_style.Font.Name = "宋体";
t_style.Font.Size = ;
t_style.Borders.SetStyle(CellBorderType.Thin);//边框样式
t_style.Borders.DiagonalStyle = CellBorderType.None;
//设置单元格背景色
t_style.ForegroundColor = System.Drawing.Color.FromArgb(153, 204, 0);
t_style.Pattern = BackgroundType.Solid;
//header 样式
Aspose.Cells.Style h_style = my_wb.Styles[my_wb.Styles.Add()];
h_style.HorizontalAlignment = TextAlignmentType.Center;//居中
h_style.Font.IsBold = true;
h_style.Font.Name = "宋体";
h_style.Font.Size = ;
h_style.Borders.SetStyle(CellBorderType.Thin);//边框样式
h_style.Borders.DiagonalStyle = CellBorderType.None;//花纹
h_style.Borders[BorderType.RightBorder].LineStyle = CellBorderType.Thin;
//Row样式
Aspose.Cells.Style r_style = my_wb.Styles[my_wb.Styles.Add()];
r_style.HorizontalAlignment = TextAlignmentType.Center;//居中
r_style.Font.IsBold = false;
r_style.Font.Name = "宋体";
r_style.Font.Size = ;
r_style.Borders.SetStyle(CellBorderType.Thin);//边框样式
r_style.Borders.DiagonalStyle = CellBorderType.None;
int tempRow = ;
if (title != "")
{
//标题的写入
sheet.Cells.Merge(, , , my_dt.Columns.Count);//单元格从第几行第几列跨不跨行
Range range = sheet.Cells.CreateRange(, , , my_dt.Columns.Count);//所在区域
Cell Cell = sheet.Cells[, ];//一个单元格
Cell.PutValue(title);
range.Style = t_style;
tempRow++;
} //列的输入
for (var i = ; i < my_dt.Columns.Count; i++)
{
sheet.Cells.Merge(tempRow, i, , );//单元格从第几行第几列跨不跨行
Cell m_Cell = sheet.Cells[tempRow, i];//一小格
m_Cell.PutValue(my_dt.Columns[i].ColumnName);
m_Cell.SetStyle(h_style);
}
tempRow++;
//行的输出
for (var i = ; i < my_dt.Columns.Count; i++)
{
for (var j = ; j < my_dt.Rows.Count; j++)
{
sheet.Cells[j + tempRow, i].PutValue(my_dt.Rows[j][i]);
sheet.Cells[j + tempRow, i].SetStyle(r_style);
}
}
sheet.Cells.SetRowHeight(, );//设置行高
//sheet.Cells.SetColumnWidth(1, 20);//设置列宽
sheet.AutoFitColumns(); //列宽自动匹配,当列宽过长是收缩 fileName = System.Web.HttpUtility.UrlEncode(fileName + ".xls", System.Text.Encoding.UTF8);//文件名编码 my_wb.Save(fileName, FileFormatType.Excel2003, SaveType.OpenInExcel, page.Response);
page.Response.End(); }
利用Aspose.Cells导出Datatable数据的更多相关文章
- 怎么利用Aspose.Cells 获取excel 数据表中sheet的名称
说明:开发环境 vs2012 asp.net mvc4 c# 利用Aspose.Cells 获取Excel数据表的sheet的名称,并把获取的名称赋值给easyUI 的combobox 1.运行效果 ...
- Aspose.Cells导出Excel(1)
利用Aspose.Cells导出excel 注意的问题 1.DataTable的处理 2.进行编码,便于中文名文件下载 3.别忘了Aspose.Cells.dll(可以自己在网上搜索) public ...
- 利用Aspose.Cells完成easyUI中DataGrid数据的Excel导出功能
我准备在项目中实现该功能之前,google发现大部分代码都是利用一般处理程序HttpHandler实现的服务器端数据的Excel导出,但是这样存在的问题是ashx读取的数据一般都是数据库中视图的数据, ...
- 利用Aspose.cells 将查询出的数据导出为excel,并在浏览器中下载。
正题前的唠叨 本人是才出来工作不久的小白菜一颗,技术很一般,总是会有遇到一些很简单的问题却不知道怎么做,这些问题可能是之前解决过的.发现这个问题,想着提升一下自己的技术水平,将一些学的新的‘好’东西记 ...
- 在ASP.NET MVC中利用Aspose.cells 将查询出的数据导出为excel,并在浏览器中下载。
正题前的唠叨 本人是才出来工作不久的小白菜一颗,技术很一般,总是会有遇到一些很简单的问题却不知道怎么做,这些问题可能是之前解决过的.发现这个问题,想着提升一下自己的技术水平,将一些学的新的'好'东西记 ...
- .net mvc 使用 aspose.cells导出数据
public class AsposeCellsHelper { public Workbook workBook; public Worksheet worksheet; Style style; ...
- 【转】 (C#)利用Aspose.Cells组件导入导出excel文件
Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...
- (C#)利用Aspose.Cells组件导入导出excel文件
Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...
- C#使用Aspose.Cells导出Excel简单实现
首先,需要添加引用Aspose.Cells.dll,官网下载地址:http://downloads.aspose.com/cells/net 将DataTable导出Xlsx格式的文件下载(网页输出) ...
随机推荐
- 图像局部显著性—点特征(FREAK)
参考文章:Freak特征提取算法 圆形区域分割 一.Brisk特征的计算过程(参考对比): 1.建立尺度空间:产生8层Octive层. 2.特征点检测:对这8张图进行FAST9-16角点检测,得到具 ...
- 图像局部显著性—点特征(SURF)
1999年的SIFT(ICCV 1999,并改进发表于IJCV 2004,本文描述):参考描述:图像特征点描述. 参考原文:SURF特征提取分析 本文有大量删除,如有疑义,请参考原文. SURF对SI ...
- webSphere
WebSphere 是 IBM 的软件平台.它包含了编写.运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台.跨产品解决方案所需要的整个中间件基础设施,如服务器.服务和工具.WebSphe ...
- Maven服务器的使用之Maven桌面项目和Maven Web项目的创建
Maven的使用 Maven功能强大, 可以参与管理软件的整个生命周期. Java软件开发中的jar包管理更是Maven的绝技. 1.创建Maven桌面项目 1.1 选择菜单创建Maven项目 1.2 ...
- 前端工具gulp
最近在写一个新的项目,用到了新框架,主要是:react+webpack.里面还用到了一个前端工具——gulp. gulp在项目里的作用是打包静态资源.编译less,压缩css等.js并不在处理之列(不 ...
- BRAFT EDITOR富文本编辑器
https://braft.margox.cn/demos/basic 官方文档 import React from 'react' import Uploading from '../Upl ...
- BZOJ 4999: This Problem Is Too Simple! DFS序+LCA+树状数组+离线
Code: #include<bits/stdc++.h> #define setIO(s) freopen(s".in","r",stdin) , ...
- scrapy-redis让redis不止使用db0
废话不多说,直接在 custom_settings 设置即可 代码: class MySpider(RedisSpider): """Spider that reads ...
- 【剑指Offer】46、圆圈中最后剩下的数
题目描述: 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此.HF作为牛客的资深元老,自然也准备了一些小游戏.其中,有个游戏是这样的:首先,让小朋友们围成一个大圈.然后 ...
- POJ 1979 Red and Black (BFS)
链接 : Here! 思路 : 简单的搜索, 直接广搜就ok了. /****************************************************************** ...