您的位置:首页 > 其它

.net导出excel简单方法,有什么方法大家都推荐下 啊,菜鸟才学习

2016-05-11 15:16 381 查看
using (SqlConnection sqlConn = new SqlConnection(conStr))

{

try

{

sqlConn.Open();

SqlCommand sqlCmd = new SqlCommand("select top 20 *from student", sqlConn);

SqlDataAdapter sdAdapter = new SqlDataAdapter(sqlCmd);

DataSet ds = new DataSet();

sdAdapter.Fill(ds, "Result");//连接数据库,并将信息读进DataSet中

Response.ContentEncoding = Encoding.GetEncoding("GB2312");//设置编码格式

Response.ContentType = "application/vnd.ms-excel";//设置输入类型为Excel文件,指定返回的是一个不能被客户端读取的流,必须被下载

Response.AddHeader("Content-Disposition", "attachment;filename=Test.xls");//添加Http表头,将文件保存为Test.xls

string columnHeader = "";//保存表头字符

string columnContent = "";//保存每行的数据内容

DataTable dsTable = ds.Tables["Result"];

for (int i = 0; i < dsTable.Columns.Count; i++)

{

if (i == dsTable.Columns.Count - 1)

columnHeader += dsTable.Columns[i].Caption.ToString() + "\n";//当当前列为最后一列时要换行

else

columnHeader += dsTable.Columns[i].Caption.ToString() + "\t";

}

Response.Write(columnHeader);

//添加每行的数据信息

foreach (DataRow dr in dsTable.Rows)

{

for (int j = 0; j < dsTable.Columns.Count; j++)

{

if (j == dsTable.Columns.Count - 1)

columnContent += dr[j] + "\n";//当当前列为最后一列时换行

else

columnContent += dr[j] + "\t";

}

Response.Write(columnContent);

columnContent = "";

}

Response.End();

}

catch (Exception msg)

{

WriteLog("", "", GetLoginIp(), "错误信息:" + msg.Message);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: