几本闲书

   :: 首页  ::  :: 联系 :: 订阅 订阅  :: 管理
最近做出版发行系统用到这块.
所以张罗了一个简单解决方案。
说它简单,是因为未对Excel做什么处理。
public void datasetToExcel1(string fileName)
        
{
            DataSet ds 
= (DataSet)this.Cache["DataSet"];
            DataTable dt
=ds.Tables[0];

            System.IO.StringWriter sw
=new System.IO.StringWriter(); 
            sw.WriteLine(
"姓名\t公司\t投递地址\t邮编\t份数\t手机\t电话"); 
            
foreach(DataRow dr in dt.Rows) 
            

                sw.WriteLine(dr[
"pSubscriberName"]+"\t"+dr["pSubscriberCompany"]+"\t"+dr["pSubscriberAddress"]+"\t"+dr["pSubscriberPost"]+"\t"+dr["pMagazineShareNum"]+"\t"+dr["pSubscriberPhone"]+"\t"+dr["pSubscriberTel"]); 
            }
 
            sw.Close(); 
            Response.AddHeader(
"Content-Disposition""attachment; filename="+System.Web.HttpUtility.UrlEncode(fileName,System.Text.Encoding.UTF8)+".xls"); 
            Response.ContentType 
= "application/ms-excel"
            Response.ContentEncoding
=System.Text.Encoding.GetEncoding("GB2312"); 
            Response.Write(sw); 
            Response.End();
        }
这里要注意的是fileName 必须进行转换,不然下载的文件名是乱码。
posted on 2007-04-10 10:58  rico  阅读(2725)  评论(12编辑  收藏  举报