asp.net操作excel
2009-08-16 21:59
309 查看
public void aa(DataSet ds)
{
string strFileName = Server.MapPath(@"Nomarl.xls");
string strSaveFileName = Server.MapPath(@"excel.xls");
Excel.Application ThisApplication = new Excel.ApplicationClass();
Excel.Workbook ThisWorkBook = null;
Excel.Worksheet ThisSheet = null;
object missing = System.Reflection.Missing.Value;
try
{
ThisWorkBook = ThisApplication.Workbooks.Open(strFileName, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);
ThisApplication.Visible = false;
int count = ThisApplication.Application.Worksheets.Count;
DataRow dr = null;
System.Data.DataTable dt = ds.Tables["customers"];
for (int i =1; i < count+1; i++)
{
ThisSheet = (Excel.Worksheet)ThisWorkBook.Sheets[i];
for (int k = 0; k < dt.Rows.Count; k++)
{
dr = dt.Rows[k];
for (int j = 0; j < dt.Columns.Count; j++)
{
ThisSheet.Cells[1+k, j + 4] = dr[j].ToString();
}
}
}
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
ThisWorkBook.SaveCopyAs(HttpContext.Current.Server.MapPath(".") + "//" + "aa" + ".xls");
ThisWorkBook.Close(false, null, null);
ThisApplication.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(ThisWorkBook);
System.Runtime.InteropServices.Marshal.ReleaseComObject(ThisApplication);
ThisWorkBook = null;
ThisApplication = null;
GC.Collect();
string path = HttpContext.Current.Server.MapPath("aa" + ".xls");
System.IO.FileInfo file = new System.IO.FileInfo(path);
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.Charset = "utf-8";
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpContext.Current.Server.UrlEncode(file.Name));
HttpContext.Current.Response.AddHeader("Content-Length", file.Length.ToString());
HttpContext.Current.Response.ContentType = "application/ms-excel";
HttpContext.Current.Response.WriteFile(file.FullName);
HttpContext.Current.Response.End();
}
{
string strFileName = Server.MapPath(@"Nomarl.xls");
string strSaveFileName = Server.MapPath(@"excel.xls");
Excel.Application ThisApplication = new Excel.ApplicationClass();
Excel.Workbook ThisWorkBook = null;
Excel.Worksheet ThisSheet = null;
object missing = System.Reflection.Missing.Value;
try
{
ThisWorkBook = ThisApplication.Workbooks.Open(strFileName, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);
ThisApplication.Visible = false;
int count = ThisApplication.Application.Worksheets.Count;
DataRow dr = null;
System.Data.DataTable dt = ds.Tables["customers"];
for (int i =1; i < count+1; i++)
{
ThisSheet = (Excel.Worksheet)ThisWorkBook.Sheets[i];
for (int k = 0; k < dt.Rows.Count; k++)
{
dr = dt.Rows[k];
for (int j = 0; j < dt.Columns.Count; j++)
{
ThisSheet.Cells[1+k, j + 4] = dr[j].ToString();
}
}
}
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
ThisWorkBook.SaveCopyAs(HttpContext.Current.Server.MapPath(".") + "//" + "aa" + ".xls");
ThisWorkBook.Close(false, null, null);
ThisApplication.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(ThisWorkBook);
System.Runtime.InteropServices.Marshal.ReleaseComObject(ThisApplication);
ThisWorkBook = null;
ThisApplication = null;
GC.Collect();
string path = HttpContext.Current.Server.MapPath("aa" + ".xls");
System.IO.FileInfo file = new System.IO.FileInfo(path);
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.Charset = "utf-8";
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpContext.Current.Server.UrlEncode(file.Name));
HttpContext.Current.Response.AddHeader("Content-Length", file.Length.ToString());
HttpContext.Current.Response.ContentType = "application/ms-excel";
HttpContext.Current.Response.WriteFile(file.FullName);
HttpContext.Current.Response.End();
}
相关文章推荐
- ASP.NET操作Excel备忘录
- asp.net 操作 excel 出现 class 组件错误 或 打开文件错误
- Asp.Net中Word,Excel等office com组件操作权限的问题
- Asp.Net操作Excel的几种方法
- asp.net 操作 EXCEL
- asp.net Excel操作-读写
- 告别ASP.NET操作EXCEL的烦恼(总结篇)
- ASP.NET服务端不装Office 操作Excel NPOI 1-2
- 关于在ASP.NET中以DCOM方式操作Excel的几个问题
- asp.net Aspose.Word 利用邮件合并功能 操作word模板 生成word。asp.net NPOI 对excel进行操作,生成excel
- asp.net excel 操作
- Asp.net中操作Excel的权限解决方法
- ASP.NET操作Excel实例
- 有关ASP.net里操作EXCEL的注意点
- ASP.NET操作EXCEL时出现的错误 Retrieving the COM class factory for component with CLSID(转)
- ASP.NET之Excel下载模板、导入、导出操作
- ASP.NET操作EXCEL时出现的错误 Retrieving the COM class factory for component with CLSID(转)
- ASP.NET中操作Word和Excel(二)
- ASP.NET对Excel单元格进行操作并且插入数据
- ASP.NET服务端不装Office 操作Excel NPOI 3