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值。
在不加括号的情况下,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")