C# 导出 Excel 时,指定 日期格式

C#在导出 Excel 时,如果 mySQL 数据库 字段类型 如果 是 DateTime 时。

默认情况下是  例 2010/03/12 12:40  这样的形式

使用  Microsoft.Office.Interop.Excel  开发导出Excel

用遍历 全表的方式 太慢,若导出上万行,有明显的卡顿。

        Application excelApp = new Application();
        Workbook workbook = excelApp.Workbooks.Add();
        Worksheet worksheet = workbook.Sheets[1];

        // 将工作表的所有单元格设置为文本格式
        for (int row = 1; row <= worksheet.Rows.Count; row++)
        {
            for (int col = 1; col <= worksheet.Columns.Count; col++)
            {
                Range cell = worksheet.Cells[row, col];
                //cell.NumberFormat = "@"; //文本格式
                cell.NumberFormat = "yyyy-mm-dd";//日期格式
            }
        }

所以我采用 SQL来处理,在SQL语句中指定某字段为日期格式,这样在显示和导出时,就都不用再特殊处理了 

将 install_data 字段 转为 2020-03-18 12:22:59  样式

DATE_FORMAT(install_date, '%Y-%m-%d %H:%i:%s')
示例
string strCol = " order_id as 工单编号,contact_tel as 电话号码, DATE_FORMAT(install_date, '%Y-%m-%d %H:%i:%s') as 安装时间  ";
string strSql = " select " + strCol + " from cashier_receive_money where deleted=0 "  ;

 

  

posted @ 2024-04-24 14:13  海乐学习  阅读(171)  评论(0编辑  收藏  举报