DataGrid中的数据导入到Word和Excel_C#

本文介绍了一个使用ASP.NET实现的简单示例,展示了如何通过DataGrid将数据导出为Word和Excel文件格式。文章包括了创建数据集、构建表格结构、填充数据以及导出的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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.Data.SqlClient ;
using System.Text;

namespace DataGrid_import_WordExcel
{
 
/// <summary>
 
/// </summary>

 public class WebForm1 : System.Web.UI.Page
 
{
  
protected System.Web.UI.WebControls.Button BtnImportWord;
  
protected System.Web.UI.WebControls.Button Btn_Import_Excel;
  
protected System.Web.UI.WebControls.DataGrid DataGrid1;
 
  
private void Page_Load(object sender, System.EventArgs e)
  
{
   
// 在此处放置用户代码以初始化页面
     CreateDataSet();
  }


  
Web 窗体设计器生成的代码

  
private void ExportDataGrid(string FileType, string FileName)        //从DataGrid导出
 {
  Response.Charset 
= "GB2312";
  Response.ContentEncoding 
= System.Text.Encoding.GetEncoding("GB2312");

  Response.AppendHeader(
"Content-Disposition""attachment;filename=" +HttpUtility.UrlEncode(FileName,Encoding.UTF8).ToString());
  Response.ContentType 
= FileType;
        
this.EnableViewState =false;
  StringWriter tw 
= new StringWriter();
  HtmlTextWriter hw 
=new HtmlTextWriter(tw);
  DataGrid1.RenderControl(hw);
  Response.Write(tw.ToString());
  Response.End();
 }

  
private void Btn_Import_Excel_Click(object sender, System.EventArgs e)
  
{
    ExportDataGrid(
"application/ms-excel""指数列表.xls");            //导到Excel
  }


  
private void CreateDataSet()                       //建立DataSet
  {
   DataSet myDataSet 
= new DataSet("aNewDataSet");
   DataTable table1 
= MakeTable("ID""Name");
   myDataSet.Tables.Add(table1);
   DataGrid1.DataSource
=myDataSet;
   DataGrid1.DataBind();
  }



  
private DataTable MakeTable(String c1Name,String c2Name)      //建表
  {
   
int i;
   DataTable myTable
=new DataTable();
   DataColumn myColumn;
   
// Add two DataColumns
   myColumn = new DataColumn(c1Name,typeof(Int32));          //增加字段及设置类型
   myTable.Columns.Add(myColumn);
   myColumn 
= new DataColumn(c2Name,typeof(string));
   myTable.Columns.Add(myColumn);
   DataRow Dr;
   
for(i=1;i<11;i++)                                         //表中增加数据
   {
    Dr
=myTable.NewRow();
    Dr[
0]=i;
    Dr[
1]="Name" + i.ToString();
    myTable.Rows.Add(Dr);
   }

   
return myTable;
  }


  
private void BtnImportWord_Click(object sender, System.EventArgs e)      //导到Word
  {
   ExportDataGrid(
"application/ms-word""指数列表.doc");
  }

 }

}





 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值