在眾志教程網(wǎng)上看到一位名叫zyz217的朋友,發(fā)了篇這樣的文章,突然想起自己過不久要做的精品課程網(wǎng)站,肯定會(huì)用到的,就轉(zhuǎn)了過來,在此先謝過zyz217了!呵呵!
<%@ Page language="c#" Codebehind="WebForm4.aspx.cs" AutoEventWireup="false" Inherits="WebUI.WebForm4" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
? <title>WebForm4</title>
? <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
? <meta name="CODE_LANGUAGE" Content="C#">
? <meta name="vs_defaultClientScript" content="JavaScript">
? <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body MS_POSITIONING="GridLayout">
? <form id="Form1" method="post" runat="server">
?? <asp:datagrid id="DataGrid1" runat="server" width="100%">
??? <ItemStyle HorizontalAlign="Center"></ItemStyle>
??? <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
??? <FooterStyle HorizontalAlign="Center"></FooterStyle>
??? <PagerStyle PageButtonCount="15" Mode="NumericPages"></PagerStyle>
?? </asp:datagrid>
?? <asp:Button id="Button1" style="Z-INDEX: 101; LEFT: 32px; POSITION: absolute; TOP: 152px" runat="server"
??? Text="Button"></asp:Button>
? </form>
</body>
</HTML>
頁(yè)面上就一個(gè)DataGrid和一個(gè)按鈕,按鈕用來觸發(fā)將數(shù)據(jù)到Excel,后臺(tái)的其他代碼也就不弄上來了,下面是那個(gè)關(guān)鍵的按鈕事件
程序代碼:
private void Button1_Click(object sender, System.EventArgs e)
{
DataTable SourceTb = new DataTable();
DataColumn myDataColumn;
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "RowIndex";? //序? 號(hào)
SourceTb.Columns.Add(myDataColumn);
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "CheckUpManName"; //審批人
SourceTb.Columns.Add(myDataColumn);
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "CheckUpIdeas"; //審批意見
SourceTb.Columns.Add(myDataColumn);
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "CheckUpDate"; //審批時(shí)間
SourceTb.Columns.Add(myDataColumn);
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "CheckUpRole"; //審批崗位
SourceTb.Columns.Add(myDataColumn);
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "HandleType";? //操作類型(1:提交| 9:駁回)
SourceTb.Columns.Add(myDataColumn);
DataRow myDataRow;
for(int i = 0;i < 30;i ++)
{
? myDataRow???? = SourceTb.NewRow();
? myDataRow["RowIndex"]? = i.ToString();
? myDataRow["CheckUpManName"] = "張三";
? myDataRow["CheckUpIdeas"] = "同意";
? myDataRow["CheckUpDate"] = "2006-03-20";
? myDataRow["CheckUpRole"] = "物資部主任";
? SourceTb.Rows.Add(myDataRow);
}
//綁定數(shù)據(jù)到DataGrid1
this.DataGrid1.DataSource = SourceTb.DefaultView;
this.DataGrid1.DataBind();
//將DataGrid1構(gòu)成的html代碼寫進(jìn)StringWriter
this.DataGrid1.Page.EnableViewState = false;
System.IO.StringWriter? tw?? = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw? = new System.Web.UI.HtmlTextWriter(tw);
this.DataGrid1.RenderControl(hw);
string HtmlInfo = tw.ToString().Trim();
string DocFileName = "審批信息.xls";
string FilePathName = Request.PhysicalPath;
FilePathName? = FilePathName.Substring(0,FilePathName.LastIndexOf("\\"));
//得到Excel文件的物理地址
FilePathName? = FilePathName +"\\" + DocFileName;
System.IO.File.Delete(FilePathName);
FileStream Fs? = new FileStream(FilePathName, FileMode.Create);
BinaryWriter BWriter= new BinaryWriter(Fs,System.Text.Encoding.GetEncoding("GB18030"));
//將DataGrid的信息寫入Excel文件
BWriter.Write(HtmlInfo);
BWriter.Close();
Fs.Close();
}
?
<%@ Page language="c#" Codebehind="WebForm4.aspx.cs" AutoEventWireup="false" Inherits="WebUI.WebForm4" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
? <title>WebForm4</title>
? <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
? <meta name="CODE_LANGUAGE" Content="C#">
? <meta name="vs_defaultClientScript" content="JavaScript">
? <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body MS_POSITIONING="GridLayout">
? <form id="Form1" method="post" runat="server">
?? <asp:datagrid id="DataGrid1" runat="server" width="100%">
??? <ItemStyle HorizontalAlign="Center"></ItemStyle>
??? <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
??? <FooterStyle HorizontalAlign="Center"></FooterStyle>
??? <PagerStyle PageButtonCount="15" Mode="NumericPages"></PagerStyle>
?? </asp:datagrid>
?? <asp:Button id="Button1" style="Z-INDEX: 101; LEFT: 32px; POSITION: absolute; TOP: 152px" runat="server"
??? Text="Button"></asp:Button>
? </form>
</body>
</HTML>
頁(yè)面上就一個(gè)DataGrid和一個(gè)按鈕,按鈕用來觸發(fā)將數(shù)據(jù)到Excel,后臺(tái)的其他代碼也就不弄上來了,下面是那個(gè)關(guān)鍵的按鈕事件
程序代碼:
private void Button1_Click(object sender, System.EventArgs e)
{
DataTable SourceTb = new DataTable();
DataColumn myDataColumn;
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "RowIndex";? //序? 號(hào)
SourceTb.Columns.Add(myDataColumn);
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "CheckUpManName"; //審批人
SourceTb.Columns.Add(myDataColumn);
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "CheckUpIdeas"; //審批意見
SourceTb.Columns.Add(myDataColumn);
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "CheckUpDate"; //審批時(shí)間
SourceTb.Columns.Add(myDataColumn);
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "CheckUpRole"; //審批崗位
SourceTb.Columns.Add(myDataColumn);
myDataColumn?? = new DataColumn();
myDataColumn.DataType = System.Type.GetType("System.String");
myDataColumn.ColumnName = "HandleType";? //操作類型(1:提交| 9:駁回)
SourceTb.Columns.Add(myDataColumn);
DataRow myDataRow;
for(int i = 0;i < 30;i ++)
{
? myDataRow???? = SourceTb.NewRow();
? myDataRow["RowIndex"]? = i.ToString();
? myDataRow["CheckUpManName"] = "張三";
? myDataRow["CheckUpIdeas"] = "同意";
? myDataRow["CheckUpDate"] = "2006-03-20";
? myDataRow["CheckUpRole"] = "物資部主任";
? SourceTb.Rows.Add(myDataRow);
}
//綁定數(shù)據(jù)到DataGrid1
this.DataGrid1.DataSource = SourceTb.DefaultView;
this.DataGrid1.DataBind();
//將DataGrid1構(gòu)成的html代碼寫進(jìn)StringWriter
this.DataGrid1.Page.EnableViewState = false;
System.IO.StringWriter? tw?? = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw? = new System.Web.UI.HtmlTextWriter(tw);
this.DataGrid1.RenderControl(hw);
string HtmlInfo = tw.ToString().Trim();
string DocFileName = "審批信息.xls";
string FilePathName = Request.PhysicalPath;
FilePathName? = FilePathName.Substring(0,FilePathName.LastIndexOf("\\"));
//得到Excel文件的物理地址
FilePathName? = FilePathName +"\\" + DocFileName;
System.IO.File.Delete(FilePathName);
FileStream Fs? = new FileStream(FilePathName, FileMode.Create);
BinaryWriter BWriter= new BinaryWriter(Fs,System.Text.Encoding.GetEncoding("GB18030"));
//將DataGrid的信息寫入Excel文件
BWriter.Write(HtmlInfo);
BWriter.Close();
Fs.Close();
}


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
