导出到Excel,字符串350471085701265成了3.50471E 14的解决方法

导出到Excel,字符串350471085701265成了3.50471E 14的解决方法- -

                                      

方法一:(感谢zhuzhanmin的帮助)
System.Data.DataTable DT = ds.Tables["EXC"];
         OWC.SpreadsheetClass xlsheet = new OWC.SpreadsheetClass();
         int row=1;      
         string ssss="";
         for(int i=0;i<ds.Tables["EXC"].Columns.Count;i++)
         {
            xlsheet.ActiveSheet.Cells[1,i+1] = ds.Tables["EXC"].Columns[i].ColumnName.ToString ();
         }
         foreach(System.Data.DataRow DR in DT.Rows)
         {
            for(int i=0;i<ds.Tables["EXC"].Columns.Count;i++)
            {
               ssss=DR[i].ToString();
               if(i<7)
               {xlsheet.ActiveSheet.Cells[row+1,i+1] = "'"+ssss;}
               else
               {xlsheet.ActiveSheet.Cells[row+1,i+1] =ssss;}
            }
            row++;
         }
         DT.Clear();
         DT.Dispose();
         string filname="grsds.xls";

         xlsheet.ActiveSheet.Export(Server.MapPath(".")+"\\"+filname,OWC.SheetExportActionEnum.ssExportActionNone);
         Response.Redirect filname);
 
方法二:将DataGrid数据导出到Excel前先将此段设置为文本格式.
private void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e)
      {
         if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
         {
            e.Item.Cells[2].Attributes.Add("style","vnd.ms-excel.numberformat:@"); 
         }
      }
原文地址:https://www.cnblogs.com/dimg/p/396535.html