一、输出到excel

函数:

    protected void InputFileTheme(object[] Header,object [] DataFileds,string sql,string filename)
        {
            SqlDBHandler dbHandler=this.getDBHandler();
            string filterStr=",";
            string strTemp;

            Hashtable hashTable=new Hashtable();
            //hashTable.Add("laguage","513");//正文语种
            /*hashTable.Add("themetype3","504");//参考地图地域类别
            hashTable.Add("themetype4","505");//参考地图形式类别
            hashTable.Add("themetype5","508");//基础教材性质类别
            hashTable.Add("themetype6","506");//基础教材学科类别
            hashTable.Add("themetype8","519");//教辅性质
            //基础教材版别
            hashTable.Add("usesegment","509");//基础教材使用学段
            hashTable.Add("useterm","510");//基础教材使用学期
            hashTable.Add("managemode","511");//编务管理类别
            hashTable.Add("electype","608");//电子出版物类型 (dictid=608)

            hashTable.Add("bindmode","516");//装帧形式
            hashTable.Add("papersize","605");//纸张尺寸
            hashTable.Add("isfund","517");//出版基金类别
            */
            if(sql.Trim().Equals(""))
                return;
            if(DataFileds==null)
                return;
            if(filename.Equals(""))
                filename="default";
            int len;
            string strInput;

            StringWriter sw=new StringWriter();

            //输出表头
            if(Header!=null)
            {
                strInput="";
                ;len<Header.Length;len++)
                {
                    if(Header[len]!=null)
                    {
                        if(strInput.Equals(""))
                            strInput=Header[len].ToString();
                        else
                            strInput+=filterStr+Header[len].ToString();
                    }
                }//for(len=0;len<Header.Length;len++)
                strInput="序号"+filterStr+strInput;
                sw.WriteLine(strInput);
            }//if(Header!=null)

            DataTable dt=dbHandler.ExecuteDataTable(sql);
            dt=CncBw.Db.ThemeInfoSet.ThemeInfoDictTransfer(dt);
            ;
            foreach(DataRow dr in dt.Rows)
            {
                strInput="";
                row+=;
                ;len<DataFileds.Length;len++)
                {
                    )
                    {

                        //输入字段,输出数据
                        if(dr[DataFileds[len].ToString()]!=null)
                        {
                            strTemp=dr[DataFileds[len].ToString()].ToString().Trim();
                            strTemp=strTemp.Replace(",",",");
                            strInput=strTemp;
                        }
                        else
                        {
                            strInput="null";
                        }//if(dr[DataFileds[len]]!=null)
                    }
                    else
                    {
                        if(dr[DataFileds[len].ToString()]!=null)
                        {
                            strTemp=dr[DataFileds[len].ToString()].ToString().Trim();
                            strTemp=strTemp.Replace(",",",");
                            strTemp = strTemp.Replace("\r\n", " ");

                            strInput+=filterStr+strTemp;
                        }
                        else
                            strInput+=filterStr+"null";
                    }//if(len==0)

                }//for(len=0;len<DataFileds.Length;len++)
                strInput=row.ToString()+filterStr+strInput;
                sw.WriteLine(strInput);
            }//foreach(DataRow dr in dt.Rows)

            sw.Close();
            Response.AddHeader("Content-Disposition", "attachment;filename="+filename+".csv");
            Response.ContentType = "application/ms-excel";
            Response.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");
            //Response.ContentEncoding=System.Text.Encoding.GetEncoding("unicode");
            Response.Write(sw);
            Response.End();
            dbHandler.Close();
        }

二、调用

this.InputFileTheme(header,dataFileds,strSql,"bookinfo");

bianwu 哈希表输出到 excel的更多相关文章

  1. arcgis api for javascript 学习(三) 调用发布地图信息,并将地图属性信息输出到Excel表中

    吐血推荐:网上搜了很久关于webgis地图属性表输出到Excel表,并没能找到相关有价值的信息,在小白面前,这就是一脸懵x啊!网上要么是关于前端如何在页面上直接导出excel,和webgis半毛钱关系 ...

  2. 【哈希表】CodeVs1230元素查找

    一.写在前面 哈希表(Hash Table),又称散列表,是一种可以快速处理插入和查询操作的数据结构.哈希表体现着函数映射的思想,它将数据与其存储位置通过某种函数联系起来,其在查询时的高效性也体现在这 ...

  3. openssl lhash 数据结构哈希表

    哈希表是一种数据结构,通过在记录的存储位置和它的关键字之间建立确定的对应关系,来快速查询表中的数据: openssl lhash.h 为我们提供了哈希表OPENSSL_LHASH 的相关接口,我们可以 ...

  4. hdu acm 1425 sort(哈希表思想)

    sort Time Limit: 6000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  5. noip模拟赛 好元素 哈希表的第一题

    这是一道关于 题2好元素 2s [问题描述] 小A一直认为,如果在一个由N个整数组成的数列{An}中,存在以下情况: Am+An+Ap = Ai (1 <= m, n, p < i < ...

  6. [转]net中哈希表的使用 Hashtable

    本文转自:http://www.cnblogs.com/gsk99/archive/2011/08/28/2155988.html 以下是PetShop中DBHelper中的使用过程: //创建哈希表 ...

  7. Snowflake Snow Snowflakes(哈希表的应用)

    Snowflake Snow Snowflakes Time Limit: 4000MS   Memory Limit: 65536K Total Submissions: 27312   Accep ...

  8. 索引器、哈希表Hashtabl、字典Dictionary(转)

    一.索引器 索引器类似于属性,不同之处在于它们的get访问器采用参数.要声明类或结构上的索引器,使用this关键字. 示例:   索引器示例代码 /// <summary> /// 存储星 ...

  9. c# 哈希表跟函数

    一.哈希表集合 先进后出,一个一个赋值,但只能一起取值. 1.哈希表的建立.赋值以及读取. 2.利用枚举类型打印出集合中的Key值和Value值. 二.函数 函数:能够独立完成某项功能的模块. 函数四 ...

随机推荐

  1. css元素position定位和z-index

    网页元素定位 1.注意点: 1)给元素设定高度要小心,除非给已知大小的图片设置高度,否则无法得知指定元素在页面上会有多高.此时最好通过padding等来控制高度. 2)对于同一个元素,不要讲float ...

  2. nodejs 入门

    1. hello word hello.js console.log("hello"); node hello.js即可 2.调试 如果 npm install太慢 可以使用国内淘 ...

  3. less 初试

    第一次接触less,做些记录. 官网     民间中文文档      less notepad++插件 1. 支持变量声明 支持颜色.大小等相加 @nice-blue: #5B83AD; @light ...

  4. hibernate反向生成映射文件报错

    报错原因:可能是你的数据库里的某个表没设置主键.

  5. linux:/etc/rc.local 不能自动启动问题

    前段时间安装LNMP环境,配置/etc/rc.local的时候配置了启动mysql.nginx.php以及关闭防火墙,可结果重启了七八次还是自启动不了后来终于找到原因了 看下图: /etc/rc.lo ...

  6. MVC 学习系列

    总是很难说清MVC的概念,即使读了源代码后(读的时候有些东西,理解起来还是有点吃力),也依然能难对整体的每一个具体的原理说的一清二楚.为了达到自己学习的目的,我把自己的学习路线写成文章,一边自己能对M ...

  7. list和set的区别

    list和set的区别 相同点:list,set都是继承自collection接口 不同点: a.list-->元素有放入顺序,元素可重复  set-->元素无放入顺序,元素不可重复 b. ...

  8. kafka0.8.2以下版本删除topic

    一些说明 kafka0.8.2及以上版本已经支持delete命令删除topic,可是之前的版本要是想删除topic还是要费一番手脚,绝对是个体力活... 该方法最好仅在线下开发环境中使用,毕竟要重启z ...

  9. Java IO总结之缓冲读入文件

    package com.io; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException ...

  10. 夺命雷公狗—angularjs—8—ng-class的简单用法

    我们在正常的业务处理中往往会遇到一些逻辑类的问题,比如各行换色,现在angularjs里面也给我们提供了一个小小的的class处理的方式,废话不多说,如下所示: <!doctype html&g ...