Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从asp.net导出到Excel时,仅将Excel中的1列格式化为强制文本,并将所有其他列保留为数字_Asp.net_Excel - Fatal编程技术网

从asp.net导出到Excel时,仅将Excel中的1列格式化为强制文本,并将所有其他列保留为数字

从asp.net导出到Excel时,仅将Excel中的1列格式化为强制文本,并将所有其他列保留为数字,asp.net,excel,Asp.net,Excel,我必须下载一个包含10列的Excel文件,在其中一列中,我得到了706918000007作为Excel中的“7.06969E+13”,当我添加时,所有内容都正确显示出来 sbResponseString.Append("<html xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:o

我必须下载一个包含10列的Excel文件,在其中一列中,我得到了706918000007作为Excel中的“7.06969E+13”,当我添加时,所有内容都正确显示出来

sbResponseString.Append("<html xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns=\"http://www.w3.org/TR/REC-html40\"> <head><style> td {mso-number-format:"\@";} </style><meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1252\"><!--[if gte mso 9]> <xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>" + worksheet_name + "</x:Name><x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head> <body>");
sbResponseString.Append(“td{mso编号格式:\@”}”);

但我不想将所有其他列转换为文本,因为我必须找到其他列的总和。因此,如何将Excel中的一列格式化为文本非常简单,我只在要转换为字符串的列中添加了一个类

 DataGrid dataExportExcel = new DataGrid();
 dataExportExcel.DataSource = ds.Tables[0];
 dataExportExcel.DataBind();
 for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
   {
   dataExportExcel.Items[i].Cells[5].Attributes.Add("class", "Invoice")
    }
DataGrid dataExportExcel=newdatagrid();
dataExportExcel.DataSource=ds.Tables[0];
dataExportExcel.DataBind();
对于(int i=0;i
然后修改了代码

sbResponseString.Append("<html xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns=\"http://www.w3.org/TR/REC-html40\"> <head><style> .Invoice {mso-number-format:\'@'}</style><meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1252\"><!--[if gte mso 9]> <xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>" + worksheet_name + "</x:Name><x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head> <body>");
sbResponseString.Append(“.Invoice{mso编号格式:\'@'}”);
简单地为Invoice类添加了单独的样式