c# - 从 MVC C# 导出到 excel 后,如何以日期时间格式显示日期
问题描述
我正在使用 EPPlus 库从 sql 表中读取日期时间值并将其导出到 excel。导出工作正常,但是当我查看 excel 文件时,日期显示为双精度而不是日期时间,我将代码放在下面
workSheet.Row(1).Height = 20;
workSheet.Row(1).Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;
workSheet.Row(1).Style.Font.Bold = true;
workSheet.Cells[1, 1].Value = "UploadId";
workSheet.Cells[1, 2].Value = "ClientId";
workSheet.Cells[1, 3].Value = "Email1";
workSheet.Cells[1, 4].Value = "Email2";
workSheet.Cells[1, 5].Value = "Email3";
workSheet.Cells[1, 6].Value = "Email4";
workSheet.Cells[1, 7].Value = "DateStamp";
//Body of table
//
int recordIndex = 2;
foreach (var exportData in dataToExport)
{
//double date = double.Parse(date);
//string sDate = (workSheet.Cells[recordIndex, 7]).Value.ToString();
//double date = double.Parse(sDate);
//var dateTime = DateTime.FromOADate(date).ToString("MMMM dd, yyyy");
workSheet.Cells[recordIndex, 1].Value = UploadId;
workSheet.Cells[recordIndex, 2].Value = exportData.ClientId;
workSheet.Cells[recordIndex, 3].Value = exportData.Email1;
workSheet.Cells[recordIndex, 4].Value = exportData.Email2;
workSheet.Cells[recordIndex, 5].Value = exportData.Email3;
workSheet.Cells[recordIndex, 6].Value = exportData.Email4;
workSheet.Cells[recordIndex, 7].Value = exportData.DateStamp;
recordIndex++;
}
解决方案
像这样的事情应该这样做;
workSheet.Cells[recordindex, 7].Style.Numberformat.Format = "yyyy-MM-dd";
推荐阅读
- dc.js - dc.js HeatMap crossfilter 灰色未选中
- javascript - 邮递员发布请求有效,但 ajax 发布无效。一遍又一遍地检查客户端js
- python - GeoPandas 跨笔记本丢失 .crs 信息
- unity-container - 如何按约定注册一个实现两个接口的类?
- java - IntelliJ 可运行 jar 在其他计算机上不起作用
- javascript - 在 chrome 中使用高 CPU 的画布
- ocaml - 我们如何将元组定义为 OCaml 中的函数输入的问题
- influxdb - 使用大文件时,influxdb CLI 导入失败插入
- javascript - 查看不更新状态更改
- office365 - Microsoft Graph:作为管理员,在用户日历中创建事件