在asp.net日期时间格式中从datatatble创建excel时错误。我只是将日期时间转换为' dd-MM-yyyy',如果日期大于12,它会正确写入,否则它将是mm-dd-yyyy格式。 Actuall am writing' 01-11-2016'即11月1日,但它显示' 11-01-2016'在excel中。我的代码是这样的。给我一个解决方案。
int rowsTotal = 0, colsTotal = 0;
int i, j, k;
rowsTotal = dt.Rows.Count;
colsTotal = dt.Columns.Count;
for (i = 0; i <= rowsTotal - 1; i++)
{
k = 0;
for (j = 0; j <= colsTotal - 1; j++)
{
if (gv. Columns[j].Visible)
{
if (dt.Columns[j].DataType.Name == "DateTime")
{
DateTime dtDate = new DateTime();
excelWorksheet.Cells[i + 4, k + 1] = string.Format("{0:dd-MM-yyyy}", dt.Rows[i][j] != DBNull.Value ? Convert.ToDateTime(dt.Rows[i][j]) : dt.Rows[i][j]);
}
else
{
excelWorksheet.Cells[i + 4, k + 1] = dt.Rows[i][j];
}
k += 1;
}
}
}