国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

ASP.NET導出數(shù)據(jù)到Excel

2024-07-10 12:56:25
字體:
來源:轉載
供稿:網(wǎng)友


該方法只是把asp.net頁面保存成html頁面只是把后綴改為xlc不過excel可以讀取,接下連我看看還有別的方式能導出數(shù)據(jù),并利用模版生成。

下面是代碼

縣新建一個asp.ne的tweb應用程序把代碼粘貼進去就好了

html頁面代碼


<%@ page language="c#" codebehind="outexcel.aspx.cs" autoeventwireup="false" inherits="emeng.exam.outputexcel" %>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en" >
<html>
<head>
<title>outputexcel</title>
</head>
<body>
<form id="form1" method="post" runat="server">
<asp:datagrid id="datagrid1" runat="server">
<columns>
<asp:boundcolumn></asp:boundcolumn>
</columns>
</asp:datagrid>
<p>
<asp:label id="label1" runat="server">文件名:</asp:label>
<asp:textbox id="textbox1" runat="server"></asp:textbox>
<asp:button id="button1" runat="server" text="輸出到excel"></asp:button></p>
</form>
</body>
</html>

接下來是cs頁面里的代碼

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.data.sqlclient;

namespace emeng.exam
{
/// <summary>
/// outputexcel 的摘要說明。
/// </summary>
public class outputexcel : system.web.ui.page
{
protected system.web.ui.webcontrols.button button1;
protected system.web.ui.webcontrols.datagrid datagrid1;
protected system.web.ui.webcontrols.textbox textbox1;
protected system.web.ui.webcontrols.label label1;
private dataset myds =new dataset();

private void page_load(object sender, system.eventargs e)
{
// 在此處放置用戶代碼以初始化頁面
if(!page.ispostback)
{
data_load();//調用方法填充表格
}

}
/// <summary>
/// 創(chuàng)建數(shù)據(jù)源
/// </summary>
/// <returns>dataview</returns>
private void data_load()
{
//數(shù)據(jù)庫連接字符串catalog為指定的數(shù)據(jù)庫名稱,datasource為要連接的sql服務器名稱
string myconn ="user id=sa;password=sa;initial catalog=test;data source=zxb;connect timeout=20";
//查詢字符串
string mysqlstr="select * from fy";
//連接數(shù)據(jù)庫操作
sqlconnection myconnection = new sqlconnection(myconn);
//執(zhí)行sql語句操作
sqldataadapter mydataadapter = new sqldataadapter(mysqlstr,myconnection);
//打開數(shù)據(jù)庫
myconnection.open();
//向dataset填充數(shù)據(jù),填充數(shù)據(jù)庫服務器中test庫中的fy表
mydataadapter.fill(myds,"fy");
//向dastagrid填充數(shù)據(jù)
datagrid1.datasource=myds;
datagrid1.databind();
}
/// <summary>
/// 輸出到excel
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_click(object sender, system.eventargs e)
{
if(textbox1.text=="")
{
response.write("<script language=javascript>");
response.write("window.alert('請輸入文件名');");
response.write("</script>");
}
else
{
response.clear();
response.buffer= true;
response.charset="gb2312"; //設置了類型為中文防止亂碼的出現(xiàn)
response.appendheader("content-disposition","attachment;filename="+textbox1.text+".xls"); //定義輸出文件和文件名
response.contentencoding=system.text.encoding.getencoding("gb2312");//設置輸出流為簡體中文
response.contenttype = "application/ms-excel";//設置輸出文件類型為excel文件。
this.enableviewstate = false;
system.globalization.cultureinfo mycitrad = new system.globalization.cultureinfo("zh-cn",true);
system.io.stringwriter ostringwriter = new system.io.stringwriter(mycitrad);
system.web.ui.htmltextwriter ohtmltextwriter = new system.web.ui.htmltextwriter(ostringwriter);
this.datagrid1.rendercontrol(ohtmltextwriter);
response.write(ostringwriter.tostring());
}
}

#region web 窗體設計器生成的代碼
override protected void oninit(eventargs e)
{
//
// codegen: 該調用是 asp.net web 窗體設計器所必需的。
//
initializecomponent();
base.oninit(e);
}

/// <summary>
/// 設計器支持所需的方法 - 不要使用代碼編輯器修改
/// 此方法的內容。
/// </summary>
private void initializecomponent()
{
this.datagrid1.itemdatabound += new system.web.ui.webcontrols.datagriditemeventhandler(this.datagrid1_itemdatabound);
this.button1.click += new system.eventhandler(this.button1_click);
this.load += new system.eventhandler(this.page_load);

}
#endregion

private void datagrid1_itemdatabound(object sender, system.web.ui.webcontrols.datagriditemeventargs e)
{
if(e.item.itemtype == listitemtype.item || e.item.itemtype == listitemtype.alternatingitem)
{
e.item.cells[0].attributes.add("style","vnd.ms-excel.numberformat:@");
e.item.cells[3].attributes.add("style","vnd.ms-excel.numberformat:¥#,###.00");
}
}
}
}

還在繼續(xù)研究別的方式



<%@ page language="c#" codebehind="outexcel.aspx.cs" autoeventwireup="false" inherits="emeng.exam.outputexcel" %>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en" >
<html>
<head>
<title>outputexcel</title>
</head>
<body>
<form id="form1" method="post" runat="server">
<asp:datagrid id="datagrid1" runat="server">
<columns>
<asp:boundcolumn></asp:boundcolumn>
</columns>
</asp:datagrid>
<p>
<asp:label id="label1" runat="server">文件名:</asp:label>
<asp:textbox id="textbox1" runat="server"></asp:textbox>
<asp:button id="button1" runat="server" text="輸出到excel"></asp:button></p>
</form>
</body>
</html>

接下來是cs頁面里的代碼

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.data.sqlclient;

namespace emeng.exam
{
/// <summary>
/// outputexcel 的摘要說明。
/// </summary>
public class outputexcel : system.web.ui.page
{
protected system.web.ui.webcontrols.button button1;
protected system.web.ui.webcontrols.datagrid datagrid1;
protected system.web.ui.webcontrols.textbox textbox1;
protected system.web.ui.webcontrols.label label1;
private dataset myds =new dataset();

private void page_load(object sender, system.eventargs e)
{
// 在此處放置用戶代碼以初始化頁面
if(!page.ispostback)
{
data_load();//調用方法填充表格
}

}
/// <summary>
/// 創(chuàng)建數(shù)據(jù)源
/// </summary>
/// <returns>dataview</returns>
private void data_load()
{
//數(shù)據(jù)庫連接字符串catalog為指定的數(shù)據(jù)庫名稱,datasource為要連接的sql服務器名稱
string myconn ="user id=sa;password=sa;initial catalog=test;data source=zxb;connect timeout=20";
//查詢字符串
string mysqlstr="select * from fy";
//連接數(shù)據(jù)庫操作
sqlconnection myconnection = new sqlconnection(myconn);
//執(zhí)行sql語句操作
sqldataadapter mydataadapter = new sqldataadapter(mysqlstr,myconnection);
//打開數(shù)據(jù)庫
myconnection.open();
//向dataset填充數(shù)據(jù),填充數(shù)據(jù)庫服務器中test庫中的fy表
mydataadapter.fill(myds,"fy");
//向dastagrid填充數(shù)據(jù)
datagrid1.datasource=myds;
datagrid1.databind();
}
/// <summary>
/// 輸出到excel
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_click(object sender, system.eventargs e)
{
if(textbox1.text=="")
{
response.write("<script language=javascript>");
response.write("window.alert('請輸入文件名');");
response.write("</script>");
}
else
{
response.clear();
response.buffer= true;
response.charset="gb2312"; //設置了類型為中文防止亂碼的出現(xiàn)
response.appendheader("content-disposition","attachment;filename="+textbox1.text+".xls"); //定義輸出文件和文件名
response.contentencoding=system.text.encoding.getencoding("gb2312");//設置輸出流為簡體中文
response.contenttype = "application/ms-excel";//設置輸出文件類型為excel文件。
this.enableviewstate = false;
system.globalization.cultureinfo mycitrad = new system.globalization.cultureinfo("zh-cn",true);
system.io.stringwriter ostringwriter = new system.io.stringwriter(mycitrad);
system.web.ui.htmltextwriter ohtmltextwriter = new system.web.ui.htmltextwriter(ostringwriter);
this.datagrid1.rendercontrol(ohtmltextwriter);
response.write(ostringwriter.tostring());
}
}

#region web 窗體設計器生成的代碼
override protected void oninit(eventargs e)
{
//
// codegen: 該調用是 asp.net web 窗體設計器所必需的。
//
initializecomponent();
base.oninit(e);
}

/// <summary>
/// 設計器支持所需的方法 - 不要使用代碼編輯器修改
/// 此方法的內容。
/// </summary>
private void initializecomponent()
{
this.datagrid1.itemdatabound += new system.web.ui.webcontrols.datagriditemeventhandler(this.datagrid1_itemdatabound);
this.button1.click += new system.eventhandler(this.button1_click);
this.load += new system.eventhandler(this.page_load);

}
#endregion

private void datagrid1_itemdatabound(object sender, system.web.ui.webcontrols.datagriditemeventargs e)
{
if(e.item.itemtype == listitemtype.item || e.item.itemtype == listitemtype.alternatingitem)
{
e.item.cells[0].attributes.add("style","vnd.ms-excel.numberformat:@");
e.item.cells[3].attributes.add("style","vnd.ms-excel.numberformat:¥#,###.00");
}
}
}
}

還在繼續(xù)研究別的方式





發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 库尔勒市| 崇义县| 嘉兴市| 精河县| 托里县| 牟定县| 温宿县| 呼伦贝尔市| 铜川市| 腾冲县| 阿拉尔市| 隆林| 彭泽县| 松阳县| 邵阳市| 万全县| 梨树县| 平遥县| 祥云县| 丹寨县| 西昌市| 灯塔市| 东兰县| 宁城县| 广宁县| 措勤县| 东兴市| 房产| 泽普县| 称多县| 南涧| 榆树市| 疏附县| 古浪县| 澄江县| 塔城市| 阿拉善右旗| 贡山| 客服| 北票市| 同德县|