static public void ExportDB2Excel(SqlDataReader r, string fn)
        
{
            HttpResponse Response 
= System.Web.HttpContext.Current.Response;
            
if(Response==nullreturn;

            Response.Clear(); 
            Response.Buffer
= true
            
string enfn = fn+".xls";
            enfn 
= System.Web.HttpUtility.UrlEncode(System.Text.Encoding.UTF8.GetBytes(enfn));
            Response.AppendHeader(
"Content-Disposition","attachment;filename="+enfn); 
            Response.ContentType 
= "application/ms-excel; charset=UTF-8"
            Response.Charset 
= "UTF-8";

            Response.Write(
"<meta http-equiv=Content-Type content=\"text/html; charset=UTF-8\">");
            Response.Write(
"<style>\r\n");
            Response.Write(
".x_excel\r\n");
            Response.Write(
"{mso-number-format:\"\\@\"}\r\n");
            Response.Write(
".x_excel\r\n");
            Response.Write(
"</style>\r\n");
            
try
            
{
                Response.Write(
"<table border='1'>");
                Response.Write(
"<tr>");
                
for(int i=0; i<r.FieldCount;i++)
                
{
                    Response.Write(
"<td>"+r.GetName(i)+"</td>");
                }

                Response.Write(
"</tr>");
                
while(r.Read())
                
{
                    Response.Write(
"<tr>");
                    
for(int i=0; i<r.FieldCount; i++)
                    
{
                        
if(r.GetName(i).IndexOf("")!=-1)
                        
{
                            Response.Write(
"<td class='x_excel'>"+r.GetValue(i)+"</td>");
                        }

                        
else
                        
{
                            Response.Write(
"<td>"+r.GetValue(i)+"</td>");
                        }

                    }

                    Response.Write(
"</tr>");
                }

                Response.Write(
"</table>");
            }

            
finally
            
{
                r.Close();
            }

            Response.End();        

        }


        
static public void ExportDB2Excel(DataTable dt, string fn)
        
{
            StringBuilder sb 
= new StringBuilder();
            
foreach(DataColumn dc in dt.Columns)
            
{
                sb.Append(dc.ColumnName);
                sb.Append(
":");
                sb.Append(dc.ColumnName);
                sb.Append(
";");
            }

            ExportDB2Excel(dt, fn, sb.ToString(
0, sb.Length-1));
        }


        
static public void ExportDB2Excel(DataTable dt, string fn, string fieldsStr)
        
{
            HttpResponse Response 
= System.Web.HttpContext.Current.Response;
            
if(Response==nullreturn;

            Response.Clear(); 
            Response.Buffer
= true
            
string enfn = fn+".xls";
            enfn 
= System.Web.HttpUtility.UrlEncode(System.Text.Encoding.UTF8.GetBytes(enfn));
            Response.AppendHeader(
"Content-Disposition","attachment;filename="+enfn); 
            Response.ContentType 
= "application/ms-excel; charset=UTF-8"
            Response.Charset 
= "UTF-8";

            Response.Write(
"<meta http-equiv=Content-Type content=\"text/html; charset=UTF-8\">");
            Response.Write(
"<style>\r\n");
            Response.Write(
".x_excel\r\n");
            Response.Write(
"{mso-number-format:\"\\@\"}\r\n");
            Response.Write(
".x_excel\r\n");
            Response.Write(
"</style>\r\n");
            Response.Write(
"<table border='1'>");
            Response.Write(
"<tr>");

            
string[] fields = fieldsStr.Split(';');
            
foreach(string s in fields)
            
{
                Response.Write(
"<td>"+s.Substring(s.IndexOf(":")+1)+"</td>");
            }

            Response.Write(
"</tr>");
            
foreach(DataRow dr in dt.Rows)
            
{
                Response.Write(
"<tr>");
                
foreach(string s in fields)
                
{
                    
string fieldname = s.Substring(0,s.IndexOf(":"));
                    
string fieldcap  = s.Substring(s.IndexOf(":")+1);
                    
if(fieldcap.IndexOf("")!=-1)
                    
{
                        Response.Write(
"<td class='x_excel'>" + dr[fieldname] + "</td>");
                    }

                    
else
                    
{
                        Response.Write(
"<td>" + dr[fieldname] + "</td>");
                    }

                }

                Response.Write(
"</tr>");
            }

            Response.Write(
"</table>");
            Response.End();        
        }