net导出到excel数字变为科学技术法

第一种方法:

引用

using System.Text.RegularExpressions;

在数字前面加个 单引号

  if (dt.Rows[i][j].ToString().Length > 11 && Regex.IsMatch(dt.Rows[i][j].ToString(), @"^[+-]?\d*$"))
 {
       if (dt.Rows[i][j].ToString() != "") data += '"' + "'" + dt.Rows[i][j].ToString() + '"';
 }
 else if (dt.Rows[i][j].ToString() != "") data += '"' + dt.Rows[i][j].ToString() + '"';

第二种方法:

在数字前面或者后面加  Convert.ToChar(9) 或者 \t

前面二种方法虽然最后导出不会变为科学计数法,但是在excel中公式匹配,不会匹配到,因为存在了字符,需要使用substitute替换掉,

或者 数据-分列

第三种方法:

row.cells[0].Attributes.Add("style","vnd.ms-excel.numberformat:@");

 

posted @ 2018-12-26 15:04  小九家的丫头  阅读(254)  评论(0编辑  收藏  举报