zoukankan      html  css  js  c++  java
  • 数据导出到excel

     //由dataset导出Excel        

            public void CreateExcel(DataSet ds,string typeid,string FileName) 
            
                HttpResponse resp; 
                resp = Page.Response; 
                resp.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); 
                resp.AppendHeader("Content-Disposition""attachment;filename=" + FileName); 
                string colHeaders= "", ls_item=""
                int i=0; 
      
                //定义表对象和行对像,同时用DataSet对其值进行初始化 
                DataTable dt=ds.Tables[0]; 
                DataRow[] myRow=dt.Select(""); 
                // typeid=="1"时导出为EXCEL格式文档;typeid=="2"时导出为XML格式文档 
                if(typeid=="1"
                
                    //取得数据表各列标题,各标题之间以 分割,最后一个列标题后加回车符 
                    for(i=0;i<dt.Columns.Count;i++)
                    {                    
                        if(i==dt.Columns.Count-1)
                        {
                            colHeaders +=dt.Columns[i].Caption.ToString() +" ";    
                        }
                        else
                        {
                            colHeaders+=dt.Columns[i].Caption.ToString()+" "
                        }
                    }
                    //向HTTP输出流中写入取得的数据信息 
                    resp.Write(colHeaders); 
                    //逐行处理数据 
                    foreach(DataRow row in myRow) 
                    
                        //在当前行中,逐列获得数据,数据之间以 分割,结束时加回车符  
                        for(i=0;i<dt.Columns.Count;i++)
                        {
                              
                            if(i==dt.Columns.Count-1)
                            {
                                ls_item += row[i].ToString() +" "
                            }
                            else
                            {
                                ls_item +=row[i].ToString() + " ";  
                            }
                        }
                        //当前行数据写入HTTP输出流,并且置空ls_item以便下行数据 
                        resp.Write(ls_item); 
                        ls_item=""
                    
                
                else 
                
                    if(typeid=="2"
                    
                        //从DataSet中直接导出XML数据并且写到HTTP输出流中 
                        resp.Write(ds.GetXml()); 
                    
                
                //写缓冲区中的数据到HTTP头文档中 
                resp.End(); 
            
  • 相关阅读:
    CF954I Yet Another String Matching Problem ( FFT )
    P4173 残缺的字符串 (带通配符的FFT字符匹配)
    电灯泡(简单容斥)
    HDU 6143 Killer Names (容斥)
    bzoj 3597: [Scoi2014]方伯伯运椰子[分数规划]
    【COGS2652】秘术「天文密葬法」(长链剖分,分数规划)
    Longge's problem ( gcd的积性)
    Desert King POJ
    P3628 [APIO2010]特别行动队(斜率dp)
    树状数组
  • 原文地址:https://www.cnblogs.com/luoqin520/p/4763524.html
Copyright © 2011-2022 走看看