c# - 导出到 Excel - 防止电话号码在 C# 中使用科学记数法

标签 c# excel export-to-excel stringbuilder

我正在将数据从数据库导出到 C# 中的 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());

最佳答案

首先,您不能保存扩展名为 XLS 的 CSV 文件。您必须导出真正的 Excel 文件,如 xls 或 xlsx,使用 OpenXML或可从 C# 使用的任何其他 Excel 库。

然后,您必须将单元格中的数据保存为字符串或将单元格的数字格式设置为文本。文本的数字格式是"@"。代码取决于您选择的解决方案。

关于c# - 导出到 Excel - 防止电话号码在 C# 中使用科学记数法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49409966/

相关文章:

c# - ASP.NET/WCF : Why are logical/physical threads dropping on full GC cycle?

vba - 尝试使用 Range.Formula 属性时格式错误的 VLookup 公式

vba - 如果找到特定字母,如何在 Excel 中插入新行

javascript - html 从右到左导出表格到 excel

c# - 大datagridview导出到excel

c# - 将数据网格导出到 excel asp

C# 根据另一个列表字符串对类属性列表进行排序

c# - 在验证上下文中使用 HttpRequest

android - 使用 Apache POI 库解析出现在 Excel 工作表中的值

c# - DateTime 对象未从 MSIL 返回正确的值