问题:导出excel后,身份证(15,18位)15位的可以正常显示,18位的后三位被excel改为000。例如210701191108088080导出后210701191108088000。
导出的方法如下:
public void ToExcel(System.Web.UI.Page page,DataTable table,string FilePathName)
{
System.Web.UI.WebControls.DataGrid D_list=new System.Web.UI.WebControls.DataGrid();
D_list.DataSource=table.DefaultView;
D_list.AllowPaging=false;
D_list.HeaderStyle.BackColor = System.Drawing.Color.SkyBlue;
D_list.HeaderStyle.Font.Bold = true;
D_list.DataBind(); httpResponse.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");
System.IO.StringWriter  tw   = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw  = new System.Web.UI.HtmlTextWriter(tw);
D_list.RenderControl(hw);
string HtmlInfo = tw.ToString().Trim();
System.IO.StreamWriter sw = System.IO.File.CreateText(FilePathName+".XLS");
sw.Write(HtmlInfo);
sw.Close();
}