asp.net将sql数据导出excel表格(代sql字段名)
protected void Button1_Click(object sender, EventArgs e)
{
string strsql = "select * from TreeViewTemp where parentID=0";
DataTable dt = db.GetDataTable(strsql);
StringWriter sw = new StringWriter();
//StreamWriter sw = new StreamWriter("d:\\test.xls",false,System.Text.Encoding.Default); 本地保存
ExportExcel(dt, sw);
Response.AddHeader("Content-Disposition", "attachment; filename=PDSDATA.xls");//遠程下載
Response.ContentType = "application/ms-excel";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
Response.Write(sw);
Response.End();
}
public void ExportExcel(DataTable dt, StringWriter w)
{
try
{
for (int i = 0; i < dt.Columns.Count; i++)
{
w.Write(dt.Columns[i]);
w.Write('\t');
}
w.Write("\r\n");
object[] values = new object[dt.Columns.Count];
foreach (DataRow dr in dt.Rows)
{
values = dr.ItemArray;
for (int i = 0; i < dt.Columns.Count; i++)
{
w.Write(values[i]);
w.Write('\t'); //修改语句
}
w.Write("\r\n"); //修改语句
}
w.Flush();
w.Close();
}
catch
{
w.Close();
}
}
引用空间为
using System.IO;
相关文档:
我说的不定条件是指查询条件的个数不定。有时一个,有时两个,有时好几个。
首先我发现
select * from A where a='kkk' 与
select * from A where a like 'kkk'
其实效果是一样,只要 like 后面的字符串不包含通配符。这样一来就很方便了。譬如有
select * from A where a='KKK' and b='LLL'
有两个查询条件, ......
BOOL StartServer()
{
if(FAILED(CoInitialize(NULL)))
{
AfxMessageBox(_T("Com初始化失败"));
return FALSE;
}
_SQLServerPtr spSQLServer ......
与ASP相比,ASP.NET在很多方面有了显著的改进,这些方面包括:性能、状态管理、可缩放性、配置、部署、安全性、输出缓存控制、网络场支持和XML Web services结构等。
如果您具有ASP 开发技能,则新的 ASP.NET 编程 ......
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentException: 输入数组长度大于此表中的列数。
错误代码如下:
DataTable sourceTable = ......