userdataGrid.DataSource = ds;
userdataGrid.DataBind(); StringBuilder sb = new StringBuilder("");
string filename = Resources.Resource.inv_MarketSearchDLPur + ".xls";
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition", "inline;filename="
+ HttpUtility.UrlEncode(filename, Encoding.UTF8));
System.IO.StringWriter sw = new System.IO.StringWriter(sb);
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);
sb.Append("(<html><body><table border=\"1\" style=\"font-family:宋体;\">");
sb.Append("<tr><td colspan=\"22\" style=\"text-align:center;font-size:18pt;font-weight:bold;\">" + Resources.Resource.inv_MarketSearchDLPur + "</td></tr>");
sb.Append("<tr style=\"background-color:SkyBlue;font-size:12pt;\">");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.mst_AccMonth + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.com_SiteId + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.psi_DealerID + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.psi_DealerName + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.mst_DealerType + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.inv_OtherInQty + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.inv_StockQty + "</td></tr>");
userdataGrid.RenderControl(hw);
sb.Append("</table></body></html>");
Response.Write(sb.ToString());
Response.End();在我的机子上这段代码是能够正常下载的,但有的机子报错说什么要打开的文件后缀名与EXCEL的后缀.xls不一致,无法导出,然后就强制用IE打开了。
上网查过说是IE的设置问题~~!但找了好久没看到怎么设置的说。
郁闷好久了
在线等
userdataGrid.DataBind(); StringBuilder sb = new StringBuilder("");
string filename = Resources.Resource.inv_MarketSearchDLPur + ".xls";
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition", "inline;filename="
+ HttpUtility.UrlEncode(filename, Encoding.UTF8));
System.IO.StringWriter sw = new System.IO.StringWriter(sb);
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);
sb.Append("(<html><body><table border=\"1\" style=\"font-family:宋体;\">");
sb.Append("<tr><td colspan=\"22\" style=\"text-align:center;font-size:18pt;font-weight:bold;\">" + Resources.Resource.inv_MarketSearchDLPur + "</td></tr>");
sb.Append("<tr style=\"background-color:SkyBlue;font-size:12pt;\">");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.mst_AccMonth + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.com_SiteId + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.psi_DealerID + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.psi_DealerName + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.mst_DealerType + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.inv_OtherInQty + "</td>");
sb.Append("<td style=\"text-align:center;\">" + Resources.Resource.inv_StockQty + "</td></tr>");
userdataGrid.RenderControl(hw);
sb.Append("</table></body></html>");
Response.Write(sb.ToString());
Response.End();在我的机子上这段代码是能够正常下载的,但有的机子报错说什么要打开的文件后缀名与EXCEL的后缀.xls不一致,无法导出,然后就强制用IE打开了。
上网查过说是IE的设置问题~~!但找了好久没看到怎么设置的说。
郁闷好久了
在线等
这种情况的出现确实与机器有关系,这是与客户机的设置有关系的,具体设置地方windows的设置里面,并不在IE的设置里面.
设置地方在 随便打开一个文件夹,工具--文件夹选项--文件类型(找到.xls)--高级--下载确认后打开
如果没沟上这个,IE就会直接调用该后缀对应的处理程序去打开
试试我这个,不过我简化了很多!!!!!基本应该没问题!!!!!!!!!!!!!!
/// <SUMMARY>
/// 将GridView的数据导入到EXECL
/// </SUMMARY>
public static bool ExportExcelGridView(GridView dgv, bool isShowExcel)
{
if (dgv.Rows.Count == 0)
{
return false;
}
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
excel.Application.Workbooks.Add(true);
excel.Visible = isShowExcel;
//生成字段名称
for (int i = 0; i < dgv.Columns.Count; i++)
{
excel.Cells[1, i + 1] = dgv.Columns[i].HeaderText;
}
//填充数据
for (int i = 0; i < dgv.Rows.Count; i++)
{
for (int j = 0; j < dgv.Columns .Count; j++)
{
excel.Cells[i + 2, j + 1] ="'"+ dgv.Rows[i].Cells[j].Text.ToString();
}
}
return true; }
#endregion