将控件中的数据输出保存到本地excel或word中,同时保存图片到本地(c#)

王朝c#·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

//把table控件中的数据保存到excel或word

public void Save(System.Web.UI.Control source, DocumentType type)

{

Response.Clear();

Response.Buffer= true;

//设置Http的头信息,编码格式

if (type == DocumentType.Excel)

{

//Excel

Response.AppendHeader("Content-Disposition","attachment;filename=result.xls");

Response.ContentType = "application/ms-excel";

}

else if (type == DocumentType.Word)

{

//Word

Response.AppendHeader("Content-Disposition","attachment;filename=result.doc");

Response.ContentType = "application/ms-word";

}

//设置编码

Response.Charset="GB2312";

Response.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");

//关闭控件的视图状态

source.EnableViewState =false;

//初始化HtmlWriter

System.IO.StringWriter writer = new System.IO.StringWriter() ;

System.Web.UI.HtmlTextWriter htmlWriter = new System.Web.UI.HtmlTextWriter(writer);

source.RenderControl(htmlWriter);

//输出

Response.Write(writer.ToString());

Response.End();

}

//以下是保存图片

public void SavePic()

{

string path = Server.MapPath(".") + @"\images\Chart.jpeg";

FileStream file = File.OpenRead(path);

byte[] content = new byte[file.Length];

file.Read(content,0,content.Length);

file.Close();

Response.Clear();

Response.AppendHeader("Content-Disposition","attachment;filename=Chart.jpeg");

Response.ContentType = "image/jpeg";//设置Http的头信息

Response.BinaryWrite(content);//输出

Response.End();

}

不过图片保存完后,页面上的DropDownList的Select事件不能促发,不晓得是什么缘故,而页面上的button事件却可以激发事件,不知道大家有没有出现过这种问题?可以讨论一下,还是我保存图片的过程有问题?

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航