操作EXCEL(1)

原创 2006年05月29日 17:44:00

读取表内容到以EX CEL形式发送到客户端

 using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

using System.IO;
using System.Text;
namespace ZilongComExcel
{
 /// <summary>
 /// ComExcel 的摘要说明。
 /// </summary>
 public class ComExcel:System.Web.UI.Page
 {
  public ComExcel()
  {
   //
   // TODO: 在此处添加构造函数逻辑
   //
  }
  public void ExportToExcel(Control ctl, string fileName, string encoding)
  {
   HttpContext context = HttpContext.Current;
   HttpResponse response = context.Response;
   response.Clear();
   response.Buffer = true;
   response.Charset = encoding;
   response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(fileName) + ".xls");
   response.ContentEncoding = Encoding.GetEncoding(encoding);
   response.ContentType = "application/ms-excel";
   if (ctl.Page != null)
   {
    ctl.Page.EnableViewState = false;
    StringWriter sw = new StringWriter();
    HtmlTextWriter htw = new HtmlTextWriter(sw);
    this.ClearControls(ctl);
    ctl.RenderControl(htw);
    response.Write(sw.ToString());
    response.End();
    ctl.Page.EnableViewState = true;
   }
   else
   {
    StringWriter sw = new StringWriter();
    HtmlTextWriter htw = new HtmlTextWriter(sw);
    ctl.RenderControl(htw);
    response.Write(sw.ToString());
    response.End();
   }

  }

  public void ExportToExcel(Control ctl, string fileName)
  {
   //this.ExportToExcel( ctl,fileName,"utf-8");
   this.ExportToExcel(ctl, fileName, "gb2312");
  }
  public void ExportToExcel(DataTable dt, string fileName)
  {
   DataGrid dg = new DataGrid();
   dg.DataSource = dt.DefaultView;
   dg.AllowPaging = false;
   dg.DataBind();
   this.ExportToExcel(dg, fileName);
  }
  public void ExportToExcel(DataSet ds, string fileName, string tableName)
  {
   DataTable dt = null;
   if (tableName == "")
    dt = ds.Tables[0];
   else
    dt = ds.Tables[tableName];
   this.ExportToExcel(dt, fileName);
  }

  public void ExportToExcel(DataSet ds, string fileName)
  {
   this.ExportToExcel(ds, fileName, "");
  }
  private void ClearControls(Control control)
  {
   for (int i=control.Controls.Count -1; i>=0; i--)
   {
    ClearControls(control.Controls[i]);
   }

   if (!(control is TableCell))
   {
    if (control.GetType().GetProperty("SelectedItem") != null)
    {
     LiteralControl literal = new LiteralControl();
     control.Parent.Controls.Add(literal);
     try
     {
      literal.Text = (string)control.GetType().GetProperty("SelectedItem").GetValue(control,null);
     }
     catch
     {
     }
     control.Parent.Controls.Remove(control);
    }
    else
     if (control.GetType().GetProperty("Text") != null)
    {
     LiteralControl literal = new LiteralControl();
     control.Parent.Controls.Add(literal);
     literal.Text = (string)control.GetType().GetProperty("Text").GetValue(control,null);
     control.Parent.Controls.Remove(control);
    }
   }
   return;
  }
 }
}

Excel_上机操作练习1_自动批改.xls

  • 2014年12月31日 17:34
  • 34KB
  • 下载

(1) 如何用Apache POI操作Excel文件-----入门

Apache POI项目的目标就是可以用Java API来创建和维护各种Office文件(MS Word,MS PowerPoint和MS Excel). 本系列文章主要是针对Excel文件的操作。对...

Excel操作资料1

转载http://www.cnblogs.com/xuanhun/archive/2010/04/29/1724500.html 一.生成Exel的方法 生成Excel的方法为调用本地Offic...

EXCEL Range对象基本操作应用示例(1)

EXCEL Range对象基本操作应用示例(1) 第五章 Range对象基本操作应用示例(1) Range对象可能是VBA代码中最常用的对象,Range对象可以是某一单...

基于POI的框架BingExcel的使用-轻松完成excel读写操作(1)

## Bingexcel User Guide ### 使用maven进行项目开发 1. **引用jar包**   目前项目的maven仓库是在github上,浏览地址为 [https://githu...

C#(源码)操作Excel大全1

C#对excel的操作

最全的OLE操作Excel的完整代码(1)

最全的OLE操作Excel的完整代码(转载) - [技术文档] 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明 http://wsqj.blogbus.com/logs/3227...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:操作EXCEL(1)
举报原因:
原因补充:

(最多只允许输入30个字)