»Dotnet Ads
»Message Boards
Message Boards
Dotnet Books
»Member Details
Register
Login
LogOut
Submit Code
Submit Jobs
Submit Projects
»Competition
Community
Winners
Prizes
Write For Us
Members
»Other Resources
Links
Dotnet Resources
|
Code to convert a datagrid data to excel and to zipThis code helps you to convert a datagrid data to excel and also to zip it.
It requires the free ICsharp dll. which you can find it on www.google.com
public bool ExceltoZip(DataGrid dgExport, HttpResponse response)
{
try
{
string filename, tmpname, filenamezip;
StringWriter strWriter;
FileStream outputStream;
StringBuilder renderedOutput;
StreamWriter sWriter;
HtmlTextWriter twriter;
tmpname = "tmp_" + DateTime.Now.Millisecond.ToString() + "_" + DateTime.Now.Minute.ToString();
renderedOutput = new StringBuilder();
strWriter = new StringWriter(renderedOutput);
twriter = new HtmlTextWriter(strWriter);
dgExport.RenderControl(twriter);
filename = System.Web.HttpContext.Current.Server.MapPath("") + "\\GeneratedFiles\\" + tmpname + ".xls";
filenamezip = System.Web.HttpContext.Current.Server.MapPath("") + "\\GeneratedFiles\\" + tmpname + ".zip";
outputStream = new FileStream(filename, FileMode.Create);
sWriter = new StreamWriter(outputStream);
sWriter.Write(renderedOutput.ToString());
sWriter.Flush();
sWriter.Close();
ICSharpCode.SharpZipLib.Zip.ZipEntry entry = new ICSharpCode.SharpZipLib.Zip.ZipEntry(Path.GetFileName(filename));
FileInfo fi = new FileInfo(filename);
entry.ExternalFileAttributes = (int)fi.Attributes;
entry.Size = fi.Length;
FileStream input = File.OpenRead(filename);
ICSharpCode.SharpZipLib.Zip.ZipOutputStream output = new ICSharpCode.SharpZipLib.Zip.ZipOutputStream(File.Create(filenamezip));
output.PutNextEntry(entry);
byte[] buffer = new byte[input.Length];
int len;
do
{
len = input.Read(buffer, 0, buffer.Length);
if (len > 0)
{
output.Write(buffer, 0, len);
}
} while (!(len == 0));
output.Close();
input.Close();
FileStream outputStream1;
outputStream1 = new FileStream(filenamezip, FileMode.Open, FileAccess.Read);
MemoryStream ms;
ms = new MemoryStream((in
|
© 2008 dotnetwatch.com -- Privacy policy
|