增加数据格式

        public static void TableToExcel2(DataTable table, string filename, string sheetname)
{ XSSFWorkbook workbook = new XSSFWorkbook();
IFont font = workbook.CreateFont();
font.FontName = "微软雅黑";
font.FontHeightInPoints = 9; IFont fonthader = workbook.CreateFont();
fonthader.FontName = "微软雅黑";
fonthader.FontHeightInPoints = 9;
fonthader.Boldweight = (short)FontBoldWeight.Bold; ICellStyle style1 = workbook.CreateCellStyle();
style1.SetFont(font); ICellStyle stylehead = workbook.CreateCellStyle();
stylehead.SetFont(fonthader); var sheet = workbook.CreateSheet(sheetname); var headerRow = sheet.CreateRow(0); //head
foreach (DataColumn column in table.Columns)
{ var cellhead = headerRow.CreateCell(column.Ordinal);//
cellhead.CellStyle = stylehead;
cellhead.SetCellValue(column.Caption); } //设置大类限制
ArrayList cat1 = new ArrayList();
DataSet ds = DBHelper.Instance.ExeDataSet(" select catname from purchase_categories where iscat=1 and parentid=0 ");
foreach (DataRow dr in ds.Tables[0].Rows)
{
cat1.Add(dr["catname"]);
} IDataValidationHelper dvHelper = sheet.GetDataValidationHelper();
NPOI.SS.Util.CellRangeAddressList regCat1 = new NPOI.SS.Util.CellRangeAddressList(1, 8000, 0, 0);
IDataValidationConstraint constraint = dvHelper.CreateFormulaListConstraint("CHOICES");
constraint.ExplicitListValues = (string[])cat1.ToArray(typeof(string));
IDataValidation validation = dvHelper.CreateValidation(constraint, regCat1);
sheet.AddValidationData(validation); //小类
regCat1 = new NPOI.SS.Util.CellRangeAddressList(1, 8000, 1, 1);
cat1 = new ArrayList();
ds = DBHelper.Instance.ExeDataSet(" select catname from purchase_categories where iscat=1 and parentid!=0 ");
foreach (DataRow dr in ds.Tables[0].Rows)
{
cat1.Add(dr["catname"]);
} constraint = dvHelper.CreateFormulaListConstraint("CHOICES");
constraint.ExplicitListValues = (string[])cat1.ToArray(typeof(string));
validation = dvHelper.CreateValidation(constraint, regCat1);
sheet.AddValidationData(validation); ////单位
regCat1 = new NPOI.SS.Util.CellRangeAddressList(1, 8000, 6, 6);
cat1 = new ArrayList();
DataView dv = Purchase.BLL.PurchaseHelper.GetParam("unit");
foreach (DataRowView dvr in dv)
{
cat1.Add(dvr["paramname"]);
}
constraint = dvHelper.CreateFormulaListConstraint("CHOICES");
constraint.ExplicitListValues = (string[])cat1.ToArray(typeof(string));
validation = dvHelper.CreateValidation(constraint, regCat1);
sheet.AddValidationData(validation); ////货币单位
regCat1 = new NPOI.SS.Util.CellRangeAddressList(1, 65535, 8, 8);
cat1 = new ArrayList();
dv = Purchase.BLL.PurchaseHelper.GetParam("currency");
foreach (DataRowView dvr in dv)
{
cat1.Add(dvr["paramname"]);
}
constraint = dvHelper.CreateFormulaListConstraint("CHOICES");
constraint.ExplicitListValues = (string[])cat1.ToArray(typeof(string));
validation = dvHelper.CreateValidation(constraint, regCat1);
sheet.AddValidationData(validation); //////货币单位
regCat1 = new NPOI.SS.Util.CellRangeAddressList(1, 65535, 11, 11);
cat1 = new ArrayList();
dv = Purchase.BLL.PurchaseHelper.GetParam("shipmethod");
foreach (DataRowView dvr in dv)
{
cat1.Add(dvr["paramname"]);
}
constraint = dvHelper.CreateFormulaListConstraint("CHOICES");
constraint.ExplicitListValues = (string[])cat1.ToArray(typeof(string));
validation = dvHelper.CreateValidation(constraint, regCat1);
sheet.AddValidationData(validation); //body
var rowIndex = 1;
foreach (DataRow row in table.Rows)
{
var dataRow = sheet.CreateRow(rowIndex);
dataRow.HeightInPoints = 20;
foreach (DataColumn column in table.Columns)
{ ICell cell = dataRow.CreateCell(column.Ordinal);
cell.SetCellValue(row[column].ToString()); cell.CellStyle = style1;
}
rowIndex++;
} FileStream sw = File.Create(HttpContext.Current.Server.MapPath(filename));
workbook.Write(sw);
sw.Close(); }

将数据导出到Excel2007格式。的更多相关文章

  1. 使用NPOI将数据导出为word格式里的table

    开发环境:VS2013+MySQL5.5+EF6+NPOI2.0.6 格式:WinForm+CodeFirst PS:vs2013的CodeFirst很方便了啊 CodeFirst方式就不再赘述了. ...

  2. 利用PHPExcel将数据导出到xls格式的excel文件

    在开发某地的经营许可证管理系统的时候需要将数据导出打excel文件,虽然一年前做某集团的ERP的时候用到过一次导入和导出,但是那时候太忙没时间写博客,一年过去了我也忘的差不多了,所以趁着今天将此次的使 ...

  3. 跨平台图表控件TeeChart使用教程:将图表数据导出为XML格式

    在开发者使用TeeChart进行开发的过程中,不管是在设计时或者运行时都可以使用的图表导出对话框将图表数据轻易地导出为XML格式: TeeChart最新版那下载地址 上图为TeeChart导出对话框的 ...

  4. Elasticsearch:如何把Elasticsearch中的数据导出为CSV格式的文件

    本教程向您展示如何将数据从Elasticsearch导出到CSV文件. 想象一下,您想要在Excel中打开一些Elasticsearch中的数据,并根据这些数据创建数据透视表. 这只是一个用例,其中将 ...

  5. 将数据 导出excel表格式

    我的考试完提交生成的数据 这是我的考试题类型 //导出调查评议的数据 public function diaocha(){ $xlsName = '表格形式 调查评议 信息'; $xlsTitle = ...

  6. SPOOL 命令使用实例【oracle导出纯文本格式文件】

    SPOOL 命令使用实例[oracle导出纯文本格式文件] SET echo off              --在用start命令执行一个sql脚本时,是否显示脚本中正在执行的SQL语句: SET ...

  7. MySQL--mysqldump(数据导出工具)

    mysqldump 客户端工具用来备份数据库或在不同数据库之间进行数据迁移.备份内容包含创建表或装载表的 SQL 语句.mysqldump 目前是 MySQL 中最常用的备份工具. 有 3 种方式来调 ...

  8. .net解决数据导出excel时的格式问题

    在项目中一般都需要将报表数据导出到EXCEL中,但经常出现导出长串数据(如身份证)到EXCEL中后显示为科学计数法的格式,或者报表中显示为001的数据导出到Excel后成了1的格式. 下面简单介绍一下 ...

  9. Dev GridControl数据导出格式问题

    环境:DevExpress9.3,Vs2008 DevExpress的GridControl提供方便的数据导出到Excel功能,导出中用户可以根据GridControl的格式进行导出(ExportTo ...

随机推荐

  1. 对象转型 casting

    一个基类的引用类型变量可以"指向"其子类对象. 一个基类的引用不可以访问其子类对象新增加的成员(属性和方法). 基类强制转型成子类,则能访问子类独有的成员. 可以使用 引用变量in ...

  2. UIView.FRAMEWORK

    uiview .framework 有太多 属性到现在基本上没怎么接触,今天开始用到了就纪录一下,有空在去了解了: [self.view bringToFront:btn] 把btn 放到self.v ...

  3. 前端利器:SASS基础与Compass入门

    SASS是Syntactically Awesome Stylesheete Sass的缩写,它是css的一个开发工具,提供了很多便利和简单的语法,让css看起来更像是一门语言,这种特性也被称为“cs ...

  4. HLSL之镜面反射光照

    今天学习的是镜面的反射光照,其实一般在场景中基本环境光和漫反射光照已经可以表现出一个不错的照明了,今天的镜面反射光照其实仅仅适合于需要在表面添加抛光或者闪耀的物体上,例如金属.玻璃等等,同时也是基于之 ...

  5. Frogger

    Freddy Frog is sitting on a stone in the middle of a lake. Suddenly he notices Fiona Frog who is sit ...

  6. PHP 数组排序

    数组中的元素能够以字母或数字顺序进行升序或降序排序. PHP - 数组的排序函数 在本节中,我们将学习如下 PHP 数组排序函数: sort() - 以升序对数组排序 rsort() - 以降序对数组 ...

  7. 非官方windows下Cpython二进制扩展包下载地址

    Unofficial Windows Binaries for Python Extension Packages url:http://www.lfd.uci.edu/~gohlke/pythonl ...

  8. Spring MVC 指导文档解读(一)

    22.1 指导文档章节 In the Web MVC framework, each DispatcherServlet has its own WebApplicationContext, whic ...

  9. Learning OpenCV

    1. 读取图片 opencv/highgui.h 2. 读取视频 opencv/cv.h opencv/highgui.h 3. 高斯平滑滤波 4. 灰度单通道与边缘检测 5. 摄像头打开 void ...

  10. C# 正则表达式测试工具与分享窗体自适应类

    放假刚回来,自己打算写一个正则表达式的测试工具,因为上次在网上用的一个在线正则表示测试工具就 没有很好的服务自己的,所以才有了现在的想法,想写一个C#开发者用的正则表达式测试工具!期间由于最大化时控件 ...