从datareader生成excel

public    void    Export2Excel(Object    Sender,    EventArgs    E)   
   {   
   //    将当前查询的数据导入Excel中   
           SqlConnection    SqlConn    =    new    SqlConnection(ConfigurationSettings.AppSettings["connectionString"]);   
    
   //    设置为true,则在当前的数据上追加数据,否则,重写当前数据   
           StreamWriter    w    =    new    StreamWriter(Server.MapPath("Data\\EmpDimissionResult.xls"),    false,    Encoding.Default);   
           SqlConn.Open();   
    
           try   
           {   
   SqlCommand    SqlCmd    =    SqlConn.CreateCommand();   
   SqlCmd.CommandText    =    你的SQL语句;   
   SqlDataReader    Reader    =    SqlCmd.ExecuteReader();   
   for    (int    i    =    0;    i    <    Reader.FieldCount;    ++i)   
   {   
   w.Write(Reader.GetName(i));   
   w.Write('\t');   
   }   
   w.Write("\r\n");   
   object[]    values    =    new    object[Reader.FieldCount];   
   while    (Reader.Read())   
   {   
     Reader.GetValues(values);   
     for    (int    i    =    0;    i    <    values.Length;    ++i)   
     {   
   w.Write(    values[i].ToString());   
   w.Write('\t');   
     }   
     w.Write("\r\n");   
   }   
   w.Flush();     
   w.Close();   
   Reader.Close();   
   SqlConn.Close();   
   Response.Redirect    ("Data\\EmpDimissionResult.xls");   
           }   
           catch   
           {   
   w.Close();   
   SqlConn.Close();   
   return;   
           }   
   }

posted on 2010-10-12 13:40  imbob  阅读(580)  评论(0编辑  收藏  举报

导航