0
您好我正在处理asp网络应用程序。在这里,我需要将网格数据导出到Excel,最后将excel文件保存为zip文件。我不想先将Excel文件保存在某个位置,然后使用zip功能获取该文件并将其转换为Zip并保存。我想要直接将网格转换为Excel然后Zip然后最终保存它的功能。我见过这么多形式和网站,但没有给出正确答案。将网格数据导出到Excel并将其保存为zip格式
您好我正在处理asp网络应用程序。在这里,我需要将网格数据导出到Excel,最后将excel文件保存为zip文件。我不想先将Excel文件保存在某个位置,然后使用zip功能获取该文件并将其转换为Zip并保存。我想要直接将网格转换为Excel然后Zip然后最终保存它的功能。我见过这么多形式和网站,但没有给出正确答案。将网格数据导出到Excel并将其保存为zip格式
您可以通过dot.net
邮编DLL做到这一点,下面的代码将帮助您
gv.AllowPaging = false;
Response.ClearContent();
Response.AddHeader("content-disposition", "attachment; filename=" + strFileName);
Response.ContentType = "application/zip";
System.IO.StringWriter sw = new System.IO.StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
gv.RenderControl(htw);
// byte[] toBytes = Encoding.ASCII.GetBytes(somestring);
MemoryStream stream = new MemoryStream();
string attachment = sw.ToString();
byte[] data = Encoding.ASCII.GetBytes(attachment);
stream.Write(data, 0, data.Length);
stream.Seek(0, SeekOrigin.Begin); // <-- must do this after writing the stream!
// File.WriteAllBytes(@"D:\Saurabh\Testing\inputpdf\saurabhhtest.xls", stream.GetBuffer());
using (ZipFile zipFile = new ZipFile())
{
zipFile.AddEntry("saurabhtest1.xls", stream);
zipFile.Save(Response.OutputStream);
}
什么版本的Excel中,你定位? – MikeH
Excel 97-2003格式 – user2864496