DataGrid导出到excel时身份证变成了科学计数法,如何才能显示正确的身份证号,而不是科学计数法

来源:百度知道 编辑:UC知道 时间:2024/06/28 23:56:25
DataGrid导出到excel时身份证变成了科学计数法,如何才能显示正确的身份证号,而不是科学计数法
我实现导出的方法如下
DataTable dt = new DataTable();//内容就不用管了,反正有身份证号
StringWriter sw = new StringWriter();
sw.WriteLine("身份证号");
foreach (DataRow dr in dt.Rows)
{
sw.WriteLine(dr["IDCard"].ToString());
}
sw.Close();
string FileName = "ToExcelTest";//导出的文件名
Response.AppendHeader("Content-Disposition", "attachment;filename=" + "" + FileName + ".csv");
Response.ContentType = "application/ms-excel";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
Response.Write(sw);
Response.End();
那位大侠知道怎么设置才能使导出的身份证号正常显示。
请注意再导出之前我是得不到那个Excel文件的,所以不能去设置列的格式,那应该如何设置格式呢
Columns("A:A").Select
Selection.NumberFormatLocal = "@"
应该加在哪里,能写的清楚些吗?

导出的后增加一句话试试
Columns("A:A").Select
Selection.NumberFormatLocal = "@"
这句话的意思就是改A列为文本型,其中"A:A"是身份证的那一列,你可以任意修改成你自己的那列

gtgtg