我将数据从DB导出到Excel中的excel,它有一个电话号码列,例如+22200073886。如何在不将数字转换为科学计数法的情况下导出到Excel?
var csv = new StringBuilder();
string strContent = "";
int counter = DS.Tables[0].Columns.Count;
// Build the file content
for (int i = 0; i <= DS.Tables[0].Rows.Count; i++)
{
for (int j = 0; j < counter; j++)
{
if (i == 0)
{
strContent += DS.Tables[0].Columns[j].ToString() + ",";
}
else
{
strContent += DS.Tables[0].Rows[i - 1][j].ToString() + ",";
}
}
csv.AppendLine(strContent.Substring(0, strContent.Length - 1));
strContent = "";
}
File.WriteAllText(new Page().Server.MapPath(filePath), csv.ToString());
答案 0 :(得分:0)
首先,您不得保存具有XLS扩展名的CSV文件。您必须导出真实的Excel文件,如xls或xlsx,使用OpenXML或可以在C#中使用的任何其他Excel库。
然后,您必须将单元格中的数据保存为字符串,或将单元格的数字格式设置为文本。文字的数字格式为“@”。代码取决于您选择的解决方案。