Excel显示"#########";当我试图将DateTime.Now.tostring()写入Exc

本文关键字:tostring Now DateTime Exc 写入 quot quot######### 显示 Excel | 更新日期: 2023-09-27 18:29:02

我在c#中创建了一个应用程序,它读取excel文件,在检查了一些条件后,它选择一行写入另一个excel文件。

一切都很好,但我需要用DateTime.Now.ToString()结束文件。

string date = DateTime.Now.ToString();
ExcelWorkSheet2.Cells[newFileRow, 1] = date;

当我看到创建的文件时,它显示的是"#######"符号,而不是实际日期。当我选择该单元格时,它将更改为正确的日期格式。

可能出了什么问题?

Excel显示"#########";当我试图将DateTime.Now.tostring()写入Exc

#####通常在单元格中的值太宽时由Excel显示。如果尝试稍微扩大列宽,会发生什么情况?

您需要扩展单元格的大小以使其正确显示。通过双击列标题使其展开以适合所有数据,最容易做到这一点。

只需尝试稍微加宽列显示即可。

正如其他人所说,列的宽度不够您的datetime值。

在不加括号的情况下,DateTime.Now.ToString()将返回当前日期的每个细节。

你可以通过在括号之间加上一些语音标记,然后加上一些格式信息来减少这种情况。

  • 当前日期的dd
  • 当月MM
  • 当年的yyyy
  • hh表示当前小时
  • mm表示当前分钟(注意小写)
  • 当前秒的ss

因此,例如,如果你只是想要没有任何时间信息的日期,你会输入以下信息,该信息将返回2012-03-25:

var thisString = DateTime.Now.ToString("yyyy-MM-dd");

感谢

我认为您可能想要缩短DateTime格式和/或稍微加宽您的单元格。请参阅此DateTime格式信息。


更多DateTime.Now.ToString()通常产生长字符串,类似于"2012年3月25日下午7:26:26"。如果这是您想要显示的内容,那么您唯一的选择就是加宽单元格/列。

否则,请考虑多种非常适合您的格式之一。示例:DateTime.Now.ToString("MM-dd-yy")