zoukankan      html  css  js  c++  java
  • 将Dataset数据导出到Excel中(ASP.NET/C#)

    其实是从网上搜索到的.......(学习......)

            
    //由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"
                

                    
    //取得数据表各列标题,各标题之间以\t分割,最后一个列标题后加回车符 
                    for(i=0;i<dt.Columns.Count;i++)
                    
    {                    
                        
    if(i==dt.Columns.Count-1)
                        
    {
                            colHeaders 
    +=dt.Columns[i].Caption.ToString() +"\n";    
                        }

                        
    else
                        
    {
                            colHeaders
    +=dt.Columns[i].Caption.ToString()+"\t"
                        }

                    }

                    
    //向HTTP输出流中写入取得的数据信息 
                    resp.Write(colHeaders); 
                    
    //逐行处理数据 
                    foreach(DataRow row in myRow) 
                    

                        
    //在当前行中,逐列获得数据,数据之间以\t分割,结束时加回车符\n 
                        for(i=0;i<dt.Columns.Count;i++)
                        
    {
                            
                            
    if(i==dt.Columns.Count-1)
                            
    {
                                ls_item 
    += row[i].ToString() +"\n"
                            }

                            
    else
                            
    {
                                ls_item 
    +=row[i].ToString() + "\t";  
                            }

                        }

                        
    //当前行数据写入HTTP输出流,并且置空ls_item以便下行数据 
                        resp.Write(ls_item); 
                        ls_item
    =""
                    }
     
                }
     
                
    else 
                

                    
    if(typeid=="2"
                    

                        
    //从DataSet中直接导出XML数据并且写到HTTP输出流中 
                        resp.Write(ds.GetXml()); 
                    }
     
                }
     
                
    //写缓冲区中的数据到HTTP头文档中 
                resp.End(); 
            }
     
  • 相关阅读:
    Linux系统学习之网络管理
    EntityFramework 6.1.2-beta2
    微软开源的30个基础设施项目-C#
    vs2015 Android SDK
    批量删除空的文件夹
    统一者管理员指南(Unifier Administration Guide)中文
    XXX全球 IP 地址库
    mssql2008R2 RCU-6083:ALTER database FWC SET READ_COMMITTED_SNAPSHOT ON
    ORA-01843: 无效的月份,执行sql语句更改为美国语言后仍然失败的解决办法
    Win7如何安装IIS来浏览ASP网站
  • 原文地址:https://www.cnblogs.com/nikytwo/p/1209105.html
Copyright © 2011-2022 走看看